Linux文件系统及相关操作
与windows前面标明盘符不同,Linux采用了将文件存储在单个目录结构中,这个目录被称为虚拟目录。
Linux使用正斜线( / )而不是反斜线( \ ) 在文件路径中划分目录。Linux中反斜线用来标识转义字符,因此不能用在文件路径里,这一点和windows不同。
常用的目录名称以及功能介绍如下:
/bin 存放常用的命令(二进制可执行程序)(重点)
/boot 存放系统内核及启动相关的文件,类似于window里面的C盘,很重要,一般不会让别的人 去挤压它的存储空间(重点)
/dev 存放我们的设备文件(重点)
/etc 存放系统配置文件(重点)
/home 家目录(所有普通用户的家目录)
/lib 存放库文件 /proc 存放虚拟文件系统目录,保存进程在内存中的信息(重点)
/usr 存放系统应用文档和程序 例如QQ微信(重点)
/var 存放系统运行中经常修改的文件,例如系统日志
/root 存放管理员的家目录 /mnt 临时挂载点
/tmp 存放临时文件,所有用户都可以访问
链接的概念
链接文件是Linux文件系统的一个优势,如果需要在系统上维护同一份文件的两份或者多个副本,除了保存多份物理文件副本外,还可以采用保存一份物理文件副本和多个虚拟副本的方法,这种虚拟的副本就称为链接 。
链接分为 软链接(符号链接)和硬链接
硬链接 :新建的文件是已经存在的文件的一个别名,当原文件删除时,新建的文件仍然可以使用。
软链接 :也称为符号链接 ,这种文件仅包含它所要链接文件的路径名,它以"路径"的形式来表示另一个文件,和Windows的快捷方式十分相似,新建的软链接可以指向不存在的文件。
创建方法
bash
ln mo linka
ln mo linkb
ln -s mo linkc
第一个命令"ln mo linka"创建了一个名为linka的硬链接,它指向一个名为mo的原始文件。硬链接是指向同一个原始文件的不同文件名,它们在文件系统中的inode号相同。因此,使用linka文件名访问该文件时,实际上访问的是原始文件。
第二个命令"ln mo linkb"创建了一个名为linkb的硬链接,它也指向原始文件mo。与linka不同,linkb是另一个硬链接,但它仍然指向同一个原始文件mo。因此,linka和linkb都是指向同一文件的硬链接。
ln中的-s选项用于创建符号链接(软链接)。第三个命令"ln -s mo linkc"创建了一个名为linkc的符号链接,它指向名为mo的原始文件。符号链接是一个指向另一个文件或目录的特殊文件,它类似于Windows系统中的快捷方式。与硬链接不同,符号链接包含的是原始文件的路径名,而不是原始文件的inode号。
bash
ll
-rw-r--r-- 3 root root 11260 Jul 13 19:19 linka//硬连接
-rw-r--r-- 3 root root 11260 Jul 13 19:19 linkb//硬连接
lrwxrwxrwx 1 root root 5 Jul 18 05:19 linkc -> mo//软连接
-rw-r--r-- 3 root root 11260 Jul 13 19:19 mo//原文件
第一个字符代表文件类型:
其中"-"表示普通文件,"d"表示目录,"l"表示符号链接等;
权限标志:rwx分别表示文件的读取(r)、写入(w)和执行(x)权限
第一组权限标志(rwx)表示文件所有者的权限;
第二组权限标志表示与所有者属于同一组的用户的权限;
第三组权限标志表示其他用户的权限。
软链接和硬链接详细解释:链接
常见Linux命令的格式
命令名称 命令参数 命令对象
注意: 命令名称, 命令参数, 命令对象之间都要用空格隔开
浏览目录命令: ls pwd
目录操作命令: cd mkdir rmdir
cd ... 则表示切换到上一层目录, cd .../...表示切换到上一层的上一层目录
浏览文件命令: cat more less head tail
文件操作命令: cp rm mv find grep touch tar zip/unzip
这里tar和zip要注意打包和压缩的区别
其他命令: echo ifconfig Ctrl+c Ctrl+l/clear man
各种命令的常用命令参数,命令对象和详细解释以及案例在Linux文件目录类常用命令
参考资料:《Linux命令行与shell脚本编程大全(第三版)》第三章基本的bash shell命令