Linux---文件、软链接于硬链接文件
在Linux中,一切皆文件,因此我们需要对Linux下的文件系统有个清楚的认识。
文件属性
在Linux中,我们可以通过ls -l
或者ll
查看具体文件信息。
注意:ls命令是用于查看当前路目录下的文件名,但是不能查看文件属性。
文件属性具体都有哪些:
- 以‘-’开头的都为普通文件。
- 以d开头的文件为目录文件
- 以b开头的文件为设备文件(硬盘、光驱)
- 以l开头的文件为链接文件
- 以p开头的文件为管道文件
文件权限
其中对应的权限分别为:
- r可读
- w可写
- x可操作
如果我们需要查看一个文件的权限,我们可以使用ls l
搭配使用。
上面这个文件,其中所有者的权限为可读可写,所属组的权限为可读可写,其余权限为可读。
软链接与硬链接
软链接文件
类似于一个快捷方式,在Linux中软链接文件类似于文本文件。类似于一个文本文件包含着另一个文件的位置信息内容,因此我们可以通过这个“快捷文件”访问到软链接的源文件,对该”快捷方式“进行读写的时候,实质就是对软链接源文件进行操作,但是删除该”快捷方式“的时候,不会删除源文件。硬链接文件
类似于一个文件的别名,我们对文件硬链接文件进行操作的时候,首先通过这个别名找到对应的源文件,再对源文件进行操作。在删除硬链接文件的时候,系统是不会删除硬链接的源文件。如果删除硬链接的源文件,则硬链接的文件不会删除,并且保存其原本的数据。因此硬链接文件可以预防”误删“的操作。
区别
- 硬链接文件不占用磁盘空间,仅仅是给其增加了一个别名(目录)
- 软链接占磁盘空间,由于其本质是一个快捷方式,因此其占用的内存也不是很多。
- 不能对目录创建硬链接。
- 不能跨文件系统创建硬链接文件。
文件描述符
当我们打开或者创建一个文件的时候,Linux内核会向一个进程发送一个文件的描述符。一个进程启动的时候,默认会打开3个文件(0标准输入、1标准输入、2标准错误)
int creat(const char* pathname,mode_t mode);
- pathname:创建文件的路径
- mde:文件权限
#include<stdio.h>
#include<fcntl.h>int main()
{int fd = -1;char filename[] = "/root/text.txt";//创建文件的路径fd = creat(pathname,066);if(fd == -1){printf("文件创建失败\n");}else{printf("文件创建成功\n");}return 0;
}
Linux---文件、软链接于硬链接文件相关推荐
- linux中软链接和硬链接,Linux中软链接和硬链接的区别
Linux中软链接和硬链接的区别 链接文件: Linux中包括两种链接:硬链接(Hard Link)和软链接(Soft Link),软链接又称为符号链接(Symbolic link). Inode 文 ...
- Linux创建软链接和硬链接的命令
Linux创建软链接和硬链接的命令 link oldfile newfile # 硬链接 ln oldfile newfile # 硬链接 ln -s old.file soft.link # 软链接 ...
- linux文件软链接与硬链接
1.命令格式: ln [参数][源文件或目录][目标文件或目录] 软链接只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间. 2.命令功能: Linux文件系统中,有所谓的链接(link),我们 ...
- Linux下如何查看一个文件是否拥有软链接或硬链接文件?
问题1:我创建了一个硬链接文件,但是我不知道放在那里了,请问怎么办? 思路: 查找文件可以利用find命令. 硬链接的特性,不会跨文件系统,所以源文件在哪个文件系统中,就在那里找 硬链接文件和源文件具 ...
- centos7删除符号链接_面试 | Linux 下软链接和硬链接的区别
在 Linux 系统中,一切都是文件,然而为了区分不同类型的事物,我们有了: 普通文件 目录文件 链接文件 设备文件 在之前的文章<阿里面试题 | Nginx 所使用的 epoll 模型是什么? ...
- linux 软链接_面试 | Linux 下软链接和硬链接的区别
在 Linux 系统中,一切都是文件,然而为了区分不同类型的事物,我们有了: 普通文件 目录文件 链接文件 设备文件 在之前的文章<阿里面试题 | Nginx 所使用的 epoll 模型是什么? ...
- linux系统-软链接与硬链接区别
目录 引言 硬盘 软.硬链接方式 硬链接 软链接 问题 引言 在介绍硬链接和软链接之前,首先介绍下硬盘相关的知识,主要是了解下 inode . 硬盘 硬盘设备是由大量的扇区组成的.以 MBR 分区为例 ...
- linux目录和链接的区别,Linux 下软链接和硬链接的区别
在 Linux 系统中,一切都是文件,然而为了区分不同类型的事物,我们有了: 普通文件 目录文件 链接文件 设备文件 在之前的文章<阿里面试题 | Nginx 所使用的 epoll 模型是什么? ...
- Linux建立软链接、硬链接
软链接 说明:软链接仅仅包含所链接文件的路径名,因此能链接目录文件,也可以跨越文件系统进行链接.但是,当原始文件被删除后,链接文件也将失效. 1.软链接,以路径的形式存在.类似于Windows操作系统 ...
最新文章
- Java学习总结:45(字符编码)
- MySQL 的存储引擎
- python生成gif【简明教程】
- Java 必看的 Spring 知识汇总!
- 程序员交流平台_「建议收藏」10个适合程序员逛的在线社区
- CVPR 2017 ECO:《ECO: Efficient Convolution Operators for Tracking》论文笔记
- 数据库相关中间件收录集
- 2017级面向对象程序设计——团队作业1
- WPF教程六:布局之Grid面板(转)
- TweenLite中文帮助手册
- 世事无常,深信服及其他
- sencha touch Container控件 setRecord 与 setData的区别
- 雇员查询java面试题经典29例【第八季_常瑞鹏】
- spring5之容器始末源码赏析 (一)总览
- iweboffice之word——功能简介
- 微生物组β-多样性——PCoA分析及可视化
- 四川师范大学人文地理(7-13章)95分版本提纲
- 声学参数-基频-Librosa标准: 基频的文字定义和用librosa提取wav文件基频
- C语言 指针的解引用详解
- 重心在哪里(简单数学题)
热门文章
- 基于HTML5的iPad电子杂志横竖屏自适应方案
- 安装chrome插件
- java学习日记(1-7)
- Linux环境下查看网络性能的基本命令
- WiFi(网络)调试Android手机
- java中输入方式Scanner和BufferedReader
- RH413-Linux系统下的SUID文件权限测试
- spring整合hibernate初步
- 在java语言中_类间的继承关系是_【填空题】在Java程序里类之间的继承关系只能是________。...
- Intellij IDEA-我常用的快捷键