linux常用命令二(文件命令类)

来源:互联网 发布:湖州美工培训学校 编辑:程序博客网 时间:2024/06/06 23:52

这里只会介绍在开发中会比较常用的命令,更多命令可以去手册中查询,还请见谅。

原文链接:侯哥小博http://37blog.com/?p=125


1、paste:命令用于合并文件的列。paste指令会把每个文件以列对列的方式,一列列地加以合并。

    语法

    paste [-s][-d <间隔字符>][--help][--version][文件...]
实例:       $ cat file                  #file文件的内容      xiongdan 200      lihaihui 233      lymlrl 231      $ cat testfile              #testfile文件的内容      liangyuanm  ss      $ cat testfile1             #testfile1文件的内容      huanggai 56      zhixi 73

当合并指令”$ paste file testfile testfile1″执行后,程序界面中将显示合并后的文件内容,如下所示:

    xiongdan 200      lihaihui 233      lymlrl 231      liangyuanm  ss      huanggai 56      zhixi 73

若使用paste指令的参数”-s”,则可以将一个文件中的多行数据合并为一行进行显示。例如,将文件”file”中的3行数据合并为一行数据进行显示,输入如下命令

    $ paste -s file             #合并指定文件的多行数据

上面的命令执行后,显示的数据内容如下所示:

    xiongdan 200 lihaihui 233 lymlrl 231

2、patch:用于修补文件,让用户利用设置修补文件的方式,修改,更新原始文件。

    实例

使用patch指令将文件”testfile1″升级,其升级补丁文件为”testfile.patch”,输入如下命令:

   $ patch -p0 testfile1 testfile.patch    #使用补丁程序升级文件 

使用该命令前,可以先使用指令”cat”查看”testfile1″的内容。在需要修改升级的文件与原文件之间使用指令”diff”比较可以生成补丁文件。具体操作如下所示:

    $ cat testfile1                 #查看testfile1的内容      Hello,This is the firstfile!      $ cat testfile2                 #查看testfile2的内容      Hello,Thisisthesecondfile!      $ diff testfile1 testfile2          #比较两个文件      1c1      <Hello,Thisisthefirstfile!      ---      >Hello,Thisisthesecondfile!      #将比较结果保存到tetsfile.patch文件      $ diff testfile1 testfile2>testfile.patch         $ cat testfile.patch                #查看补丁包的内容      1c1      <Hello,Thisisthefirstfile!      ---      >Hello,Thisisthesecondfile!      #使用补丁包升级testfile1文件      $ patch -p0 testfile1 testfile.patch          patching file testfile1      $cat testfile1                  #再次查看testfile1的内容      #testfile1文件被修改为与testfile2一样的内容      Hello,This is the secondfile!

3、rcp:命令用于复制远程文件或目录

语法:

rcp [-pr][源文件或目录][目标文件或目录]

实例:

    rcp root@218.6.132.5:./testfile testfile  #复制远程文件到本地      rcp root@218.6.132.5:home/rootlocal/testfile testfile      #要求当前登录账户cmd 登录到远程主机      rcp 218.6.132.5:./testfile testfile

4、rm:命令用于删除一个文件或者目录

    实例

删除文件可以直接使用rm命令,若删除目录则必须配合选项”-r”,例如:

    # rm  test.txt     rm:是否删除 一般文件 "test.txt"? y      # rm  homework      rm: 无法删除目录"homework": 是一个目录      # rm  -r  homework      rm:是否删除 目录 "homework"? y 

删除当前目录下的所有文件及目录,命令行为:

    rm  -r  *

文件一旦通过rm命令删除,则无法恢复,所以必须格外小心地使用该命令。

5、split:命令用于将一个文件分割成数个

语法

    split [-<行数>][-b <字节>][-C <字节>][-l <行数>][要切割的文件][输出文件名]

参数说明

  • -<行数> : 指定每多少行切成一个小文件
  • -b<字节> : 指定每多少字节切成一个小文件
  • -C<字节> : 与参数”-b”相似,但是在切 割时将尽量维持每行的完整性
  • [输出文件名] : 设置切割后文件的前置文件名, split会自动在前置文件名后再加上编号

    实例

使用指令”split”将文件”README”每6行切割成一个文件,输入如下命令:

    $ split -6 README       #将README文件每六行分割成一个文件 

以上命令执行后,指令”split”会将原来的大文件”README”切割成多个以”x”开头的小文件。而在这些小文件中,每个文件都只有6行内容。

6、touch:用于修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。ls -l 可以显示档案的时间记录。

    $ touch testfile                #修改文件的时间属性 
    $ touch file            #创建一个名为“file”的新的空白文件 

7、cp:命令主要用于复制文件或目录。

    语法

    cp [options] source dest

参数说明

  • -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
  • -d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
  • -f:覆盖已经存在的目标文件而不给出提示。
  • -i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答”y”时目标文件将被覆盖。
  • -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
  • -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
  • -l:不复制文件,只是生成链接文件。
  • 8、scp:命令用于Linux之间复制文件和目录。算是一种远程复制命令
  •     实例

    1)、从本地复制到远程

    命令格式:

        scp local_file remote_username@remote_ip:remote_folder     或者     scp local_file remote_username@remote_ip:remote_file     或者     scp local_file remote_ip:remote_folder     或者     scp local_file remote_ip:remote_file 

    2)、从远程复制到本地

    从远程复制到本地,只要将从本地复制到远程的命令的后2个参数调换顺序即可,如下实例

    应用实例:

        scp root@www.w3cschool.cc:/home/root/others/music /home/space/music/1.mp3     scp -r www.w3cschool.cc:/home/root/others/ /home/space/music/