Linux:目录组织结构、绝对路径与相对路径、目录相关命令

Linux目录组织结构

在Linux下面,所有的文件与目录都是由根目录开始的,根目录是所有文件与目录的源头,然后再一个一个的分支下来,像树枝状,如下图
目录树directory tree
Linux的FHS(Filesystem Hierarchy Standard)给出了每个特定的目录下应该存放什么样的文件,FHS目的是希望让用户可以了解到已安装软件通常放置于哪个目录下

/bin:存放常用命令(即二进制可执行程序),主要有:cat、ls、mkdir、tar、mount、mv、cp、bash等常用命令
/etc:存放系统配置文件
/home:所有普通用户的家目录,“~”代表目前这个用户的家目录
/root:系统管理用户的家目录
/usr:存放系统应用程序及文档,(usr全称UNIX Software Resource)
/proc:虚拟文件系统目录,以进程为单位存储内存的映射,(proc全称process information pseudo-file system进程信息虚拟文件系统)
/dev:存放设备文件
/mnt:临时挂载点
/lib:存放库文件
/boot:系统内核及启动有关的文件
/tmp:存放各种临时文件,是所有用户均可访问的地点
/var:存放系统运行中常改变的文件,如系统日志

绝对路径与相对路径

根据文件名写法的不同,将所谓的路径定义为绝对路径与相对路径
绝对路径:由根目录(/)开始写起的文件名或目录名称,例如:/usr/local/src
相对路径:相对于当前位置的路径,即从当前位置开始到指定位置的路径,‘.’代表当前位置,‘..’代表当前位置的上一层目录,例如:./main.c表示当前位置下的main.c文件

区分绝对路径和相对路径只需要看首字符,如果首字符是‘/’,则是绝对路径,其他的都是相对路径
注意:在写程序(shell脚本)来管理系统的条件下,务必使用绝对路径,因为绝对路径的写法虽然比较麻烦,但是可以肯定的是这个写法是唯一的且正确的,若使用相对路径,则可能由于执行的工作环境不同导致一些问题的发生

目录相关命令

.:代表当前目录,例如./main.c当前目录下的main.c文件

..:代表上一层目录,例如../test.c上一层目录下的test.c文件

~:代表目前使用者身份的家目录,例如cd ~dmtsai等价于cd /home/dmtsai

cd:change directory 切换目录,例如cd /usr/share

pwd:print working directory 显示当前工作位置的绝对路径

mkdir:make directory 建立一个新目录

rmdir:remove directory 删除一个空目录,目录需要一层一层的删除才行,而且被删除的目录里面必定不能存在其他的目录或文件,即必须是空目录,如果要删除非空目录,要使用命令rmdir -r dirname,-r参数让它递归地去删除

ls:查看文件或目录的信息,
用法:ls 路径,显示指定路径下的文件,如果不给路径,默认显示的是当前目录的文件
ls命令的选项与参数:
-a 显示所有的文件,连同隐藏的文件(开头为 . 的文件)
-i 显示文件对应的inode节点号
-l 显示文件的详细信息,包含文件的属性与权限等数据(常用ls -l也可简化为ll)

参考书籍
《鸟哥的Linux私房菜》第四版 第五章Linux的文件权限与目录配置

猜你喜欢

转载自blog.csdn.net/huifaguangdemao/article/details/107930114