Linux常用bash shell命令整理

列表常用命令

  • ls
    不带参数,终端支持彩色时,可以根据颜色区分不同类型的文件。
  • ls -F
    结果会在目录名后加上"/",在可执行文件后加上"*"。
  • ls -R
    递归选项,结果会列出当前目录下包含的子目录的文件。
  • ls -a
    同时显示隐藏文件。
  • ls -l
    长列表,包含文件的详细信息。
  • ls my*
    查找文件my_script,使用"*"匹配零个或多个字符。
  • ls my_scrip?
    查找文件my_script,使用"?"匹配单个字符。

处理文件常用命令

  1. 创建文件
  • touch filename
    在当前文件夹下创建文件filename。
  1. 复制文件
  • cp file_one file_two
    当前文件夹下file_one复制到file_two,file_two已存在的话会覆盖。加上-i选项可在覆盖前收到询问。
  • cp -i file_one /home/Andy/Documents/
    将file_one复制到Documents目录下。需要注意,如果不加最后的"/",则会在Andy文件夹下创建名为Documents的文件,并将file_one的内容复制到文件中。
  • cp -i /etc/xxx .
    将etc文件夹下的xxx文件复制到当前文件夹,以"."代表当前文件夹。
  • cp -R /root/ /home/test/
    带-R参数,将root文件夹下的所有文件夹和文件复制到home/test文件夹中,文件夹不存在时会自动创建。注意:1. 源文件夹和目标文件夹最后的"/"都可以不加,不会影响结果;2. 文件夹下的隐藏文件也会一起复制。

注:当文件名过长时,可以用制表符补全文件名,以免出错。

  1. 链接文件
  • ln a b
    硬链接,创建一份与a完全相同的b文件,但是不会在磁盘中写入文件内容。不允许操作目录,不允许在不同的文件系统间操作。
  • ln -s a b
    符号链接,创建一份指向a的b文件,b文件只包含a文件的地址信息,因此b文件很小。

注:磁盘中的文件有不同的索引(inode)编号,新创建的硬链接文件只是和源文件指向磁盘中的同一块区域,因此它们有共同的索引编号。磁盘上一个索引编号位置存储的内容只有在指向它的文件的数量为0时才会清除掉。而符号链接类似于Windows系统中的快捷方式。

  1. 重命名文件
  • mv oldname newname
    将文件/文件夹oldname重命名为newname。
  • mv oldname /newpath/newname
    同时改变位置。

注:和复制一样,如果需要在覆盖前收到询问,可以加上-i参数

  1. 删除文件
  • rm filename
    同样,加入-i可以在删除前询问。而加入-f参数可以强制删除。

处理文件夹常用命令

  1. 创建目录
  • mkdir dirname
    在当前目录创建名为dirname的目录。
  • mkdir -p firstname/secondname/thirdname
    加上-p参数可以创建多层目录。
  1. 删除目录
  • rmdir dirname
    删除名为dirname的空目录,如果目录中有内容则不能删除。
  • rm -r dirname
    加入-r参数可以向下进入多层目录,删除目录中的文件后再删除目录。加-i可以在删除前询问。
  • rm -rf dirname
    终极删除法,强制删除目标目录。

查看文件内容

  • file filename
    查看文件类型。
  • cat filename
    查看整个文件的内容。
  • more filename
    将文件分页查看。
  • less filename
    more命令的升级版。
  • tail -n -100 filename
    tail命令查看文件的结尾部分,-n -100表示最后100行,可以写作-n 100或者简写为-100。默认为10行。
  • head filename
    head命令查看文件开头部分,规则同tail。

你可能感兴趣的:(Linux常用bash shell命令整理)