文件管理类的命令总结

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

相关推荐

  • 文本处理sed

    文本处理sed Sed介绍:          处理文本的工具sed ,Stream EDitor, 行编辑器 sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,…

    Linux干货 2017-05-04
  • CentOS启动流程

    CentOS启动大致流程: POST –> BootSequence –> Bootloader –> kernel –> rootfs –> switchroot –> /sbin/init –> (/etc/inittab;/et…

    Linux干货 2017-07-12
  • 第三周作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@UncleZ ~]# who | cut -d' ' -f1 | uniq -c 2、取出最后登录到当前系统的用户的相关信息。 [roo…

    Linux干货 2016-12-17
  • N25-第三周博客作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@node1 ~]# who | cut -d" " -f1 | uniq (unknown) root 2、取出最后登录到当前系统的用户的相关信息…

    Linux干货 2016-12-17
  • 【N25第五周作业】find命令以及相关练习

    find: 实时查找工具,通过遍历指定起始路径下文件系统层级结构完成文件查找; 工作特性: 查找速度略慢; 精确查找; 实时查找; 用法: find [OPTIONS]  [查找起始路径]  [查找条件]  [处理动作] 查找起始路径:指定具体搜索目标起始路径;默认为当前目录; 查找条件:…

    Linux干货 2016-12-27
  • SED命令

    sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件,简化对文件的反复操作,编写转…

    Linux干货 2017-05-01

评论列表(2条)

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

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

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

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