Linux的目录结构为树状结构,最顶级的目录为根目录/。
其他目录通过挂载可以将它们添加到树中,通过接触挂载可以移除它们。
-
绝对路径
路径的写法:由根目录 / 写起,如:/usr/share/doc这个目录。 -
相对路径
路径的写法:不是有 / 写起,例如由: /usr/share/doc 要到 /usr/share/man 底下时,可以写成: cd …/man 这就是相对路径的写法。
处理目录的常用命令
- ls (英文全拼:list files):列出目录及文件名。
- cd(英文全拼:change directory):切换目录。
- pwd(英文全拼:print work directory):显示当前的目录。
- mkdir(英文全拼:make directory):创建一个新的目录。
- rmdir(英文全拼:remove directory):删除一个空的目录。
- cp(英文全拼:copy file):复制文件或目录。
- rm(英文全拼:remove):删除文件或目录。
- mv(英文全拼:move file):移动文件与目录,或修改文件与目录的名称。
可以使用man 命令 来查看各个名单使用文档,如:man cp。
ls(列出目录)
语法:
ls [选项] [文件名...]
[root@localhost test]# ls -a
. .. 2.txt dir1 dir2
[root@localhost test]# ls -l
总用量 0
-rw-r--r--. 1 root root 0 1月 11 20:08 2.txt
drwxr-xr-x. 2 root root 19 1月 11 20:08 dir1
drwxr-xr-x. 2 root root 6 1月 11 20:11 dir2
[root@localhost test]# ls -d
.
[root@localhost test]#
选项与参数:
- -a :全部的文件,连同隐藏文件(开头为 . 的文件)一起列出来。
- -d :仅列出目录本身,而不是列出目录内的文件数据。
- -l : 长数据列出,包含文件的属性与权限等数据。
cd(切换目录)
cd是Change Directory的缩写,这是用来变换工作目录的命令。
语法:
cd [相对路径或绝对路径]
#使用mkdir 命令创建cchf目录
[root@localhost test]# mkdir cchf
#使用绝对路径切换到cchf目录
[root@localhost test]# pwd
/tmp/test
[root@localhost test]# cd /tmp/test/cchf
[root@localhost cchf]#
#使用相对路径切换到cchf目录
[root@localhost test]# cd ./cchf
[root@localhost cchf]#
mkdir(创建新新目录)
mkdir [-mp] 目录名称
选项与参数:
- -m:配置文件的权限,直接配置。
- -p :直接将所需要的目录(包含上一级目录)递归创建。
-m
[root@localhost cchf]# mkdir -m a=rwx 2.txt
[root@localhost cchf]# mkdir 3.txt
[root@localhost cchf]# ll
drwxrwxrwx. 2 root root 6 1月 11 20:25 2.txt
drwxr-xr-x. 2 root root 6 1月 11 20:26 3.txt
-p
[root@localhost cchf]# mkdir -p cchf1/cchf2/cchf3
[root@localhost cchf]# ls -R ./cchf1
./cchf1:
cchf2
./cchf1/cchf2:
cchf3
./cchf1/cchf2/cchf3:
[root@localhost cchf]#
rmdir(删除空的目录)
语法:
rmdir [-p] 目录名称
[root@localhost cchf]# rmdir -p cchf1/cchf2/cchf3
选项与参数:
- -p:从该目录起,一次删除多级空目录。
[root@localhost cchf]# rmdir -p cchf1/cchf2/cchf3
cp(复制文件或目录)
cp 即拷贝文件和目录。
语法:
[root@www ~]# cp [-adfilprsu] 来源档(source) 目标档(destination)
[root@www ~]# cp [options] source1 source2 source3 .... directory
- -a:相当於 -pdr 的意思,至於 pdr 请参考下列说明;(常用)
- -d:若来源档为连结档的属性(link file),则复制连结档属性而非文件本身;
- -f:为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;
- -i:若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)
- -l:进行硬式连结(hard link)的连结档创建,而非复制文件本身;
- -p:连同文件的属性一起复制过去,而非使用默认属性(备份常用);
- -r:递归持续复制,用於目录的复制行为;(常用)-s:复制成为符号连结档 (symbolic link),亦即『捷径』文件;
- -u:若 destination 比 source 旧才升级 destination !
rm(移除文件或目录)
语法:
rm [-fir] 文件或目录
选项与参数:
-f:就是force的意思,不出现警告信息;
-i:互动模式,在删除前询问使用者是否动作
-r:递归删除,慎用。
mv(移动文件与目录,或修改名称)
语法:
[root@www ~]# mv [-fiu] source destination
[root@www ~]# mv [options] source1 source2 source3 .... directory
- -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
- -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
- -u :若目标文件已经存在,且 source 比较新,才会升级 (update)
把/tmp/test/cchf目录下的2.txt文件移动到/tmp/test/dir2/下并改名为22.txt
[root@localhost cchf]# ls
1.txt 2.txt 3.txt
[root@localhost cchf]# mv 2.txt ../dir2/22.txt
[root@localhost cchf]# ls
1.txt 3.txt
[root@localhost cchf]# ls ../dir2/
22.txt