Linux下命令(4)

描述

1.rm命令:删除文件/目录

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

     语法: rm [] <文件或者目录>

    说明:如果没有使用-r选项,则rm不会删除目录;

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

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

             -i 进行交互式删除。

            -v 输出已经删除的文件。

      使用rm命令要格外小心,应为一旦一个文件被删除,它是不能被恢复的,为了防止此种情况发生,可以使用rm命令中的-i选项来确认要删除的每个文件。如果用户输入y,文件将被删除。如果输入任何其他东西,文件将会被保留。

    (1)删除文件

 

[wbyq@wbyq ~]$ rm 1.doc #删除文件

 

   (2)递归删除

 

[wbyq@wbyq ~]$ mkdir 123/456/789/ads -pv #创建目录
[wbyq@wbyq ~]$ rm 123 -rfv #删除目录,并输出删除过程
removed directory '123/456/789/ads'
removed directory '123/456/789'
removed directory '123/456'
removed directory '123'
Linux

 

   (3)删除所有文件

 

[wbyq@wbyq work]$ rm ./* -rfv
Linux

 

2.cat命令:查看文件内容

  功能: 查看文件内容
  语法: cat [选项] [文件]

参数:

 -b 对非空输出行号
 -E 在每行结束处显示$
 -n对输出的所有行进行编号
 -s不输出多行空行

3.pwd命令:显示工作目录

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

 语法: pwd

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

 

[wbyq@wbyq ~]$ pwd
/home/wbyq

 

      根目录以开头的“/”表示。如果 pwd 后面什么都没有,则显示当前所在位置。如果屏幕信息很多,可以通过clear 可以清除。

4.cp命令:拷贝文件/目录

 功能: 将给出的文件或目录拷贝到另一文件或目录中。
 语法: cp [选项] <源文件或目录> <目标文件或目录>
 说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。

 参数:

     -a 该选项通常拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录

                -d 拷贝时保留链接。

                -f 删除已经存在的目标文件而不提示。

                -i 和 f 选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答 y 时目标文件将被覆盖,是交互式拷贝。

               -r 若给出的源文件是一目录文件,此时 cp 将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。一般使                      用-a 参数。

 

//拷贝work目录下的所有文件到当前目录
[xsw@ashui ~]$ cp -a  /mnt/hgfs/red_hat_linux/work/  ./  
[xsw@ashui ~]$ cp  123.c  ./work/   #拷贝123.c文件到当前目录下的work目录下

 

5.mv 命令:改名、移动、文件/目录

   功能: 为文件或目录改名或将文件由一个目录移入另一个目录中。

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

   说明:视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv 命令将各参数指定的源文件均移至目标目录中。在跨文件系统移动文件时,mv先拷贝,再将原有文件删除,而链至该文件的链接也将丢失。

 参数:

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

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

     如果所给目标文件(不是目录)已存在,此时该文件的内容将被新文件覆盖。为防止用户在不经意的情况下 用mv命令破坏另一个文件,建议用户在使用mv命令移动文件时,最好使用i选项。

    (1)移动文件

 

[wbyq@wbyq ~]$ mv 1.c ./work/

 

      将1.c移动到work目录下

    (2)文件重命名

 

[wbyq@wbyq work]$ mv 1.c test.c 

 

      将1.c改名为test.c

6.chmod 命令:修改文件/目录权限

  功能: 改变文件或目录的访问权限

 语法: chmod [权限] <文件或者目录>

      通过 ls -l 命令可以查看目录或者文件的详细信息,其中第 2~10 个字符代表了文件的访问权限,当中的每3个为一组,左边三个字符表示所有者权限;中间3个字符表示与所有者同一组的用户的权限,右边3个字符是其他用户的权限。这三个一组共9个字符,代表的意义如下:
 

Linux

 其中的权限可以使用数字的组合方式进行表示:

Linux

    数字设定的关键是取值,一开始许多初学者会被搞糊涂,其实很简单,我们将 rwx 看成二进制数,如果有则 有 1 表示,没有则有 0 表示。

     例如: rwx r-x r–则可以表示成为:111 101 100

     再将其每三位转换成为一个十进制数,就是754。

      设置文件权限示例:

Linux

7.ln命令:建立符号链接

 ln连接文件或目录,分为软链接和硬链接。
 软连接语法: ln -s <源文件> <目标文件> (删除源文件之后,链接变成无效的了),相当于快捷方式。
 硬链接语法: ln <源文件> <目标文件>(删除源文件之后,目标没有影响)

 

[wbyq@wbyq ~]$ ln -s app app2 #创建软件链接

 

8.find命令

命令功能: 用于在文件树种查找文件,并作出相应的处理。

 语法: find [查找的路径] [选项] [表达式]

 命令参数说明:

Linux

 使用示例

      (1)根据名字查找

 

$ find /home/wbyq/ -name main.c  #在wbyq目录下查找main.c文件

 

  (2)根据通配符查找文件

 

$ find /home/wbyq/ -name “*.c”   #在指定目录下查找所有.c文件
$ find  “*.c”  #在当前目录下查找.c文件

 

  (3)不区分大小写的方式:

 

$ find /home/wbyq/ -iname "*.c"

 

  (4)同时查找多个文件

 

$ find /home/wbyq/  -name "*.txt" -o -name "*.c" -o -name "*.h"

 

  在/home/wbyq/目录下查找以.c、.txt、 .h为后缀的文件。主要参数是-o。

    (5)根据文件大小进行匹配

 

$ find /home/wbyq/ -type f -size 200k

 

  在/home/wbyq/目录下查找类型为 f的普通文件,并且文件的大小为200k。

 文件大小单元:
     b —— 块( 512 字节)

     c —— 字节

     w —— 字( 2 字节)

     k —— K 字节

     M —— 兆字节

     G —— G 字节

 常用大小搜索方式:

 

搜索大于 100KB 的文件 $ find /home/wbyq/ -type f -size +100k
搜索小于 100KB 的文件 $ find /home/wbyq/ -type f -size -100k
搜索等于 100KB 的文件 $ find /home/wbyq/ -type f -size 100k

 

  (6)查找并删除指定文件

 

//wby目录下找普通文件,以.c为后缀,并删除
$ find /home/wbyq/  -type f -name "*.c" -delete 
$ find /home/wbyq/ -name "*.txt" -ok rm {} ;
$ find /home/wbyq/ -name "*.txt" -exec rm {} ;

 

     -exec参数后面跟的是command命令,它的终止是以;为结束标志的,所以这句命令后面的分号是不可缺少的,考虑到各个系统中分号会有不同的意义,所以前面加反斜杠。

     {}花括号代表前面find查找出来的文件名。

      注意:{}和;中间的空格。

     其中-ok和-exec行为一样,不过-ok会给出提示,是否执行相应的操作;-exec不会提示,直接执行。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分