您当前位置:网站首页 >> L_服务器 >> 技巧专区 >> linux目录与文件的操作

linux目录与文件的操作

2013-11-13 19:30:35 来源:ITB运维部落 浏览:2
内容提要:系统在建立每一个目录时,都会自动为它设定两个目录文件,一个是".",代表该目录自己,另一个是"..",代表该目录的父目录,对于根目录,"."和".."都代表其自己。 

系统在建立每一个目录时,都会自动为它设定两个目录文件,一个是".",代表该目录自己,另一个是"..",代表该目录的父目录,对于根目录,"."和".."都代表其自己。

需要说明的是,根目录是Linux系统中的特殊目录。Linux是一个多用户系统,操作系统本身的驻留程序存放在以根目录开始的专用目录中,有时被指定为系统目录


用户可以通过一个"~"字符来引用自己的主目录。

cp命令 

该命令的功能是将给出的文件或目录拷贝到另一文件或目录中,就如同DOS下的copy命令一样,功能非常强大

语法: cp [选项] 源文件或目录 目标文件或目录


- a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。
- f 删除已经存在的目标文件而不提示。
- i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。
- r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。


$ cp - i exam1.c /usr/wang/shiyan1.c


  该命令将文件exam1.c拷贝到/usr/wang 这个目录下,并改名为 shiyan1.c。若不希望重新命名,可以使用下面的命令:


  $ cp exam1.c /usr/ wang/


  $ cp - r /usr/xu/ /usr/liu/ 将/usr/xu目录中的所有文件及其子目录拷贝到目录/usr/liu中。


mv命令


  用户可以使用mv命令来为文件或目录改名或将文件由一个目录移入另一个目录中。该命令如同DOS下的ren和move的组合。


  语法:mv [选项] 源文件或目录 目标文件或目录

- I 交互方式操作。如果mv操作将导致对已存在的目标文件的覆盖,此时系统询问是否重写,要求用户回答y或n,这样可以避免误覆盖文件。


- f 禁止交互操作。在mv操作要覆盖某已有的目标文件时不给任何指示,指定此选项后,i选项将不再起作用。


例1:将/usr/xu中的所有文件移到当前目录(用“.”表示)中:


  $ mv /usr/xu/ * .


  例2:将文件wch.txt重命名为wjz.doc


  $ mv wch.txt wjz.doc

rm命令


  在linux中创建文件很容易,系统中随时会有文件变得过时且毫无用处。用户可以用rm命令将其删除。该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。

rm命令的一般形式为:


  rm [选项] 文件…


  如果没有使用- r选项,则rm不会删除目录。

    - f 忽略不存在的文件,从不给出提示。


  - r 指示rm将参数中列出的全部目录和子目录均递归地删除。


  - i 进行交互式删除。

$ rm - ii test example Remove test ?n


  Remove example ?y

 

mkdir命令

 

  功能:创建一个目录(类似DOS下的md命令)。


  语法:mkdir [选项] dirname

命令中各选项的含义为:


  - m 对新建目录设置存取权限。也可以用chmod命令设置。


  - p 可以是一个路径名称。此时若路径中的某些目录尚不存在, 加上此选项后, 系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。


  例如:在当前目录中建立inin 和inin下的/mail目录,也就是连续建两个目录。


  $ mkdir - p - m 700 ./inin/mail/


  该命令的执行结果是在当前目录中创建嵌套的目录层次inin /mail,权限设置为只 有文件主有读、写和执行权限。


rmdir 命令


  功能:删除空目录。


  语法:rmdir [选项] dirname

- p 递归删除目录dirname,当子目录删除后其父目录为空时,也一同被删除。如果整个路径被删除或者由于某种原因保留部分路径,则系统在标准输出上显示相应 的信息。


  例如:


  $ rmdir - p /usr/xu/txt 将/usr/xu/txt目录删除。


  改变工作目录、显示目录内容命令

cd 命令


  功能:改变工作目录。


  语法:cd [directory]

例如:假设用户当前目录是:/home/xu,现需要更换到/home/xu/pro目录中,


  $ cd pro 此时,用户可以执行pwd命令来显示工作目录。


  $ pwd /home/xu/pro


  pwd 命令


  在Linux层次目录结构中,用户可以在被授权的任意目录下利用mkdir命令创建新目录,也可以利用cd命令从一个目录转换到另一个目录。然而,没有提示符来告知用 户目前处于哪一个目录中。要想知道当前所处的目录,可以使用pwd命令,该命令显示整个路径名。


  语法:pwd


  说明:此命令显示出当前工作目录的绝对路径。


  例:


  $ pwd /home/xu 显示的路径名为/home/xu,每个目录名都用“/”隔开,根目录以开头的“/”表 示。


  ls 命令


  ls是英文单词list的简写,其功能为列出目录的内容。这是用户最常用的一个命令之一,因为用户需要不时地查看某个目录的内容。该命令类似于DOS下的dir命令。


  语法:ls [选项] [目录或是文件]


  对于每个目录,该命令将列出其中的所有子目录与文件。对于每个文件,ls将输出 其文件名以及所要求的其他信息。默认情况下,输出条目按字母顺序排序。当未给出目录名或是文件名时,就显示当前目录的信息。


  命令中各选项的含义如下:


  - a 显示指定目录下所有子目录与文件,包括隐藏文件。

 - A 显示指定目录下所有子目录与文件,包括隐藏文件。但不列出“.”和 “..”。

- C 分成多列显示各项。


- R 递归式地显示指定目录的各个子目录中的文件。


例1:列出当前目录的内容。


  $ ls


  -F bin/ lib/ var/


  etc/ tmp/ index. html


  例2:列出某个目录的内容。


  $ ls –F /home/xu Mai1/


  map1e/ mm/ ptr/ telnetd*


  fd/ mbox mount sobsrc. tgz tmp/


  例3:列出某个目录下所有的文件(包括隐藏文件)。


  $ 1s -aF /home/xu


  ./ . .e1m/ .netscape/ map1e ptr/


  ../ .fvwin2rc95 .term/ mbox sobsrc. tgz


  .Xauthority .kermrc Mai1/ mm/ te1netd*


  .bash-history .ncftp/ fd/ mount tmp/


  例4:用长格式列出某个目录下所有的文件(包括隐藏文件)。


  $ 1s -laF /home/xu


  total 584


  drwxr-xr-x l2 root root 1024 Nov 02 22:07 ./


  drwxr-xr-x 15 bbs bbs 1024 Jul 29 07:08 ../


  -rw-r--r-- 1 yu users 4343 Ju1 29 22:20 .bash-history


  drwx------ 2 yu users 1024 May 17 06:36 .e1m/


  --rw------ 1 root root 4628 Jun 2 1l:34 mbox


  lrwxrwxrwx 1 root root l4 Ju1 29 03:08 mount->/mnt


  drwxrwxr-x 4 root root 1024 Ju1 23 03:43 ptr/


  -rw--r--r- 1 root root 483997 Ju1 l5 17:3l sobsrc. tgz


  -rwxr-xr-x l root users 60177 Jun 8 01:29 telnetd*


  drwxr-xr-x 2 root root 1024 Mar 6 22:32 tmp/  


  例5:用长格式列出某个目录下所有的文件包括隐藏文件和它们的i节点号。并把文 件属主和属组以UID号和GID号的形式显示。


  $ 1s -1ainF /home/xu tota1 584 399672


  drwxr-xr-x l2 0 0 l024 Nov 30 22:07 ./ 333907


  drwxr-xr-x 15 9999 99 l024  Ju1 29 07:08 ../ 39980l


  -rw------- l 0 0 0 Jun 2 2:09 .Xauthority 399679


  -rw-r--r-- 1 505 l00 4343 Jul 29 22:20 .bash-hist0ry 30l763


  drwxr----- 2 505 100 l024  May 17 06:36 .e1m/ ……

发表评论
网名:
评论:
验证:
共有0人对本文发表评论查看所有评论(网友评论仅供表达个人看法,并不表明本站同意其观点或证实其描述)