文件管理类的命令总结

Linux系统内针对目录的管理命令有很多,现在我们进行逐一介绍:

1.  mkdir – make directories,创建目录

语法:mkdir [OPTION]… DIRECTORY…
常用选项:

选项 | 含义
—— | ——
-p, –parents | 递归创建,如果最终要创建的目录的上一级或上几级目录不存在,可以递归一并创建
-v | 显示命令执行的详细结果,通常与-p一同使用
-m MODE | 在创建目录时直接给定目录权限,如果省略则给定默认权限
> 注意:路径基名方为命令作用的对象,基名之前的路径必须得存在。

示例:
~]# mkdir -pv /a/b/c/d
递归创建/a/b/c/d,并显示创建详细结果

2.  rmdir – remove empty directories, 删除空目录,非空则无法删除

语法:rmdir [OPTION]… DIRECTORY…

常用选项:

选项 | 含义
—— | ——
-p | 递归删除,当删除完基名目录时,如果其父目录也为空,则一并删除;依此类推,直到非空目录为止
-v | 显示命令执行的详细结果,通常与-p一同使用
示例:
~]# rmdir -pv /tmp/a/b/c
递归删除/tmp/a/b/c,直到非空目录为止,并显示删除详细结果

3.  tree – 以倒置的树状结构来显示目录结构

tree [OPTIONS] [DIRECTORY]
常用选项:

选项 | 含义
—— | ——
-L | 限定查看目录结构时最多展开几个层级,限定查看目录的深度
示例:
~]# tree /etc -L 2
以树状结构显示/etc/目录的目录结构,限定最多显示两个层级

4.cp – copy,文件复制

语法:

场景 | 语法样例
—— | ————
单源复制 | cp [OPTION]… [-T] SOURCE DEST
多源复制 | cp [OPTION]… SOURCE… DIRECTORY
多源复制 | cp [OPTION]… -t DIRECTORY SOURCE…
alias cp=’cp -i’

单源复制(单个源 –> 单个目标)
如果目标不存在,则事先创建此文件,并复制源文件的数据流至目标中;
如果目标存在,且目标是非目录文件,则覆盖目标文件;
如果目标存在,且目标是目录文件,则现在目标目录下创建一个与源文件同名的文件,并将源文件数据流复制到新创建的目标文件中。

多源复制(多个源 –> 目录)
如果目标不存在,则会报错;
如果目标存在,但目标不是目录,则也会报错;
如果目标存在,且目标是目录,则会分别复制源文件中的每一个文件至目标目录中,并保持原名。

复制命令的常用选项

选项 | 含义
—— | ——
-i | 交互式复制,即覆盖之前提醒用户确认
-f | 强制覆盖目标文件,即不需要用户再次确认
-r, -R, –recursive | 递归复制目录
-d | 不跟踪符号链接所指向的源文件,仅复制符号链接
-a | 等同于-dR –preserv=all,可理解为archive,归档之意。
–preserv | 设置保留指定元数据属性

–preserv元数据保留对照表

元数据类型 | 含义
—— | ——
mode | 权限数据
ownership | 属主和属组
timestamps | 时间戳属性(atime, mtime, ctime)
context | 安全标签
xattr | 扩展属性
links | 符号链接
all | 上述所有属性
示例:
~]# cp  -r /var/log /tmp
递归复制/var/log目录至/tmp目录下

5. mv – move,移动或重命名文件

语法:

场景 | 语法样例
—— | ————
单源移动 | mv [OPTION]… [-T] SOURCE DEST
多源移动 | mv [OPTION]… SOURCE… DIRECTORY
多源移动 | mv [OPTION]… -t DIRECTORY SOURCE…
别名:alias mv=’mv -i’

单源移动(单个源 –> 单个目标)
如果目标不存在,则事先创建此文件,并复制源文件的数据流至目标中,然后将源文件删除;
如果目标存在,且目标是非目录文件,则覆盖目标文件,然后将源文件删除;
如果目标存在,且目标是目录文件,则现在目标目录下创建一个与源文件同名的文件,并将源文件数据流复制到新创建的目标文件中,然后将源文件删除。

多源移动(多个源 –> 目录)
如果目标不存在,则会报错;
如果目标存在,但目标不是目录,则也会报错;
如果目标存在,且目标是目录,则会分别复制源文件中的每一个文件至目标目录中,并保持原名,然后将源文件删除。

移动命令常用选项

选项 | 含义
—— | ——
-i | 交互式移动,即覆盖之前提醒用户确认
-f | 强制覆盖目标文件,即不需要用户再次确认
示例:
~]# mv -f /web/http /tmp/
强行移动/web/http到/tmp目录下

6. rm – remove,删除文件或目录

语法:rm [OPTION]… FILE…
别名:alias rm=’rm -i’

删除命令常用选项

选项 | 含义
—— | ——
-i | 交互式删除,即删除之前提醒用户确认
-f | 强制性删除,即不再需要提醒用户确认,直接进行删除操作
-r, -R, –recursive | 递归删除目录

> 强烈建议:
在生产环境的运维工作中,建议不要直接对文件做rm的删除操作,而是把所有想要删除的文件mv到一个自创建的临时目录中(用于模拟windows的回收站),等过一段时间,确认没有问题后,再进行删除操作!

原创文章,作者:N27_sapbcs,如若转载,请注明出处:http://www.178linux.com/86375

(26)
N27_sapbcsN27_sapbcs
上一篇 2017-09-07 15:10
下一篇 2017-09-07 16:04

相关推荐

  • 软件包管理(rpm篇)

    软件包管理(rpm篇)静态和动态链接    链接主要作用是把各个模块之间相互引用的部分处理好,使得各个模块之间能够正确地衔接,分为静态链接和动态链接    静态链接        把程序对应的依赖库复制一份到包&nbsp…

    Linux干货 2017-04-24
  • 复习-RAID原理详解

    一、RAID RAID:冗余磁盘阵列,将多个磁盘不同的方式组成阵列,作为单一磁盘使用;通过RAID,大幅提高了I/O能力、容错性。 二、RAID级别 不同的磁盘阵列组成模式,称为磁盘级别,不同的RAID级别可提供不同的I/O能力提升、磁盘可用率和容错性 1、RAID 0 条带卷 strip  用两块和两块以上磁盘组成,RAID控制器将数据平均切割成…

    Linux干货 2016-07-04
  • 自动化运维工具Puppet

        开发puppet模块,nginx负载均衡并反代动态请求至httpd,httpd用ajp连接器将反代请求至tomcat,并部署tomcat-session-memcached 架构图为 在master主机上开发的模块为: 1、chrony模块; ├── chrony│   ├── files│…

    2017-07-28
  • 文件归档,shell循环和函数运用

    文件归档 tar (1)  创建归档 tar -c -f / PATH/TO/SOMEFILE .tar FILE… tar cf / PATH/TO/SOMEFILE .tar FILE… (2)  查看归档文件中的文件列表 tar -t -f  /PATH/TO/SOMEFILE .tar (3) &…

    Linux干货 2016-08-21
  • PHP高效率写法(详解原因)

    1.尽量静态化:    如果一个方法能被静态,那就声明它为静态的,速度可提高1/4,甚至我测试的时候,这个提高了近三倍。   当然了,这个测试方法需要在十万级以上次执行,效果才明显。   其实静态方法和非静态方法的效率主要区别在内存:静态方法在程序开始时生成内存,实例方法在程序运行中生成内存,所以静…

    Linux干货 2015-05-28

评论列表(2条)

  • 马哥教育
    马哥教育 2017-10-10 12:58

    第次作业完成的都很认真,写的越来越好了,也看得出进步越来越大的,非常棒!

  • 浮生
    浮生 2018-01-01 22:22

    这次的排版就比上一章好多了