5.2.1 文件和目录操作命令
要学会使用Linux,首先要掌握的就是基本的文件和目录操作命令。
1.pwd——显示(打印)用户当前所处的目录
这是最常用的命令了,如果不知道自己所处的目录,就必须使用它。用法如下:
[test@redflag test]$pwd
/home/test
说明当前目录是/home/test。
2.cd目录名——改变当前所处的目录或处理绝对目录和相对目录
如果用户当前处于/bin目录,想进入/etc目录,可以键入:
[test@redflag/bin]$cd/etc
说明:Linux系统中,用“.”代表当前目录;用“..”代表父目录;用“~”代表个人主目录。例如,root用户的个人主目录是/root,不带任何参数,则“cd”命令相当于“cd~”。例如:
[test@redflag dir]$cd../test
执行后则进入上一级目录下的test目录(即和当前目录平行的目录test)。
3.ls[参数]路径或文件名——列出文件或子目录的信息
参数说明:
-a:显示所有文件及目录,包括以“.”开头的隐藏文件。
-l:以长格式显示文件或子目录名信息。即除文件名外,也将文件状态、权限、拥有者、文件大小等信息详细列出。
-i:显示每个文件的索引(节点)号。
-t:根据文件的最后修改时间排序列表。
-A:同-a,但不列出“.”(当前目录)及“..”(父目录)。
-R:递归显示子目录中的内容。
-r:将档案以相反次序显示(原定依英文字母次序)。
-t:将档案依建立时间之先后次序列出。
-A:同-a,但不列出“.”(当前目录)及“..”(父目录)。
-F:在列出的档案名称后加一符号;例如可执行文档则加“*”,目录则加“/”。
-R:若目录下有档案,则以下的档案也皆依序列出。
-help:显示帮助信息。
-version:显示版本信息。
例:执行命令
[test@redflag test]$ls-a
将显示当前目录下的所有文件,输出:
Bak chap1.txt Desktop txt
Linux系统用颜色来区分文件类别。缺省时,蓝色代表目录,绿色代表可执行文件,红色代表压缩文件,浅蓝色代表链接文件,灰色代表其他文件。
[test@redflag test]$ls-l
drwxrwxr-x2 longkey longkey 48 20A 24 22:23 bak
-rw-rw-r--1 longkey longkey 16 20A 24 22:23 chap1.txt
1rwxrwxr-x1 root root longkey 16 20A 24 22:23 Desktop->Desktop-gb/
Drwxr-x---2 longkey longkey 48 20A 24 22:23 chap1.tx
现在来解析显示结果中各部分的含义,以最后一行为例,输出结果分7组(以横线标识),依次是:文件类别和文件权限、链接数、文件拥有者、文件所属组、文件大小、文件创新或修改时间、文件名。第一组的第一个字符代表文件类别,第一组的2~10个字符代表文件权限。Linux系统用“-”代表普通文件,“d”代表目录,“1”代表符号链接,“c”代表字符设备,“b”代表块设备。本例中chap1.txt是普通文件,而Bak和Desktop则是链接文件。目录拥有者的权限是rwx(表示有读、写和执行权限);组中其他人对该目录的权限是r-x(表示有读和执行权限,没有写权限),系统中其他人对该目录的权限是---(表示读、写和执行权限都没有)。
4.tree 目录名——以树的形式显示指定目录下的内容
[test@redflag test] $ls tree/etc/rc.4
以树的形式显示目录/etc/rc.4下的文件和子目录。
5.mkdir[参数]目录名——建立目录
说明:目录可以是绝对路径,也可以是相对路径。
参数说明:
-p:建立目录时,如果父目录不存在,则此时可以与子目录一起建立。
例如:
[test@redflag test]$mkdir dir1
在当前目录下建立dir1目录。
[test@redflag test]$ mkdir –p dir2/bak
在dir2目录下建立bak目录,如果dir2目录不存在,那么同时建立dir2目录。
6.rmdir[参数]目录名——删除目录
说明:目录同样可以是绝对路径,也可以是相对路径。
参数说明:
-p:一起删除父目录时,父目录下应无其他目录。
例如:
将工作目录下,名为test的子目录删除:
[root@redflag root]$rmdir test
删除当前目录下的test目录。删除目录时,被删除的目录下应无文件或目录存在。
[root@redflag root]$rmdir–p longkey/test
删除当前目录下的longkey/test目录。删除目录test时,如果父目录longkey下无其他内容,则一起删除longkey目录。
7.cp[参数]源文件目标文件——拷贝文件或目录
相当于DOS下的copy命令。
参数说明:
-f:如果目标文件或目录存在,则先删除它们再拷贝(即覆盖),并且不提示用户。
-i:如果目标文件或目录存在,则提示是否覆盖已有的文件。
-r:递归复制目录,即包含目录下的各级子目录。
例:
将档案aaa复制(已存在),并命名为bbb:
[test@redflag test]$cp aaa bbb
将所有的C语言程序拷贝至 Finished 子目录中:
[test@redflag test]$cp *.c Finished
8.rm[参数]文件名或目录名——删除文件或目录
相当于DOS下的del命令。
参数说明:
-f:删除文件或目录时不提示用户。
-i:删除文件或目录时提示用户。
-r:递归删除目录,即包含目录下的文件及各级子目录。
例:
[test@redflag test]$ rm *
即删除当前目录下的所有文件,但子目录和以“.”开头的文件(即隐含文件)不删除。
[test@redflag test]$ rm–iR bak
删除当前目录下的子目录bak,包含其下的所有文件和子目录,并且提示用户确认。
9.mv[参数]源文件或目录目标文件或目录——移动文件或目录及更名
相当于DOS下的move命令。
参数说明:
-f:不论目标文件或目录是否存在,均不提示是否覆盖目标文件或目录。
-i:如果目标文件或目录存在时,提示是否覆盖目标文件或目录。
值得注意的是:mv可以用来更改文件名或目录名。
例:
[test@redflag test]$ mv a.txt b.txt
这里移动文件时并不改变文件的目录,如果a.txt原来不存在,则实际上是把a.txt更名为b.txt。
[test@redflag test]$mv~/txtbak /bak
这里把个人主目录txtbak移动到/bak目录下。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。