linux文件目录管理命令整理总结

 更新时间:2019年11月18日 08:07:29   作者:khche  
在本篇文章里小编给大家整理的是关于linux文件目录管理命令整理总结,需要的朋友们参考下。

touch命令

有两个功能:一是用于把已存在文件的时间标签更新为系统当前的时间(默认方式),它们的数据将原封不动地保留下来;二是用来创建新的空文件。

选项:

  • -a:或--time=atime或--time=access或--time=use 只更改存取时间;
  • -c:或--no-create 不建立任何文件;
  • -d:<时间日期> 使用指定的日期时间,而非现在的时间;
  • -f:此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题;
  • -m:或--time=mtime或--time=modify 只更该变动时间;
  • -r:<参考文件或目录> 把指定文件或目录的日期时间,统统设成和参考文件或目录的日期时间相同;
  • -t:<日期时间> 使用指定的日期时间,而非现在的时间;

mkdir命令

创建目录

选项:

  • -Z:设置安全上下文,当使用SELinux时有效;
  • -m<目标属性>或--mode<目标属性>建立目录的同时设置目录的权限;
  • -p或--parents 若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录;

参数:

目录:指定要创建的目录列表,多个目录之间用空格隔开。

cp命令

用来将一个或多个源文件或者目录复制到指定的目的文件或目录。

选项:

  • -a:此参数的效果和同时指定"-dpR"参数相同;
  • -d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录;
  • -f:强行复制文件或目录,不论目标文件或目录是否已存在;
  • -i:覆盖既有文件之前先询问用户;
  • -l:对源文件建立硬连接,而非复制文件;
  • -p:保留源文件或目录的属性;
  • -R/r:递归处理,将指定目录下的所有文件与子目录一并处理;
  • -s:对源文件建立符号连接,而非复制文件;
  • -u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时,才复制文件;
  • -S:在备份文件时,用指定的后缀“SUFFIX”代替文件的默认后缀;
  • -b:覆盖已存在的文件目标前将目标文件备份;
  • -v:详细显示命令执行的操作。

参数:

源文件:制定源文件列表。默认情况下,cp命令不能复制目录,如果要复制目录,则必须使用-R选项;

目标文件:指定目标文件。当“源文件”为多个文件时,要求“目标文件”为指定的目录。

注意:所有目标文件指定的目录必须是己经存在的,cp命令不能创建目录。

实例:

我们在Linux下使用cp命令复制文件时候,有时候会需要覆盖一些同名文件,覆盖文件的时候都会有提示:需要不停的按Y来确定执行覆盖。文件数量不多还好,但是要是几百个估计按Y都要吐血了,于是折腾来半天总结了一个方法:

cp aaa/* /bbb

复制目录aaa下所有到/bbb目录下,这时如果/bbb目录下有和aaa同名的文件,需要按Y来确认并且会略过aaa目录下的子目录。

cp -r aaa/* /bbb
这次依然需要按Y来确认操作,但是没有忽略子目录。

cp -r -a aaa/* /bbb
依然需要按Y来确认操作,并且把aaa目录以及子目录和文件属性也传递到了/bbb。

\cp -r -a aaa/* /bbb
成功,没有提示按Y、传递了目录属性、没有略过目录。

mv命令

用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。

选项:

  • --backup=<备份模式>:若需覆盖文件,则覆盖前先行备份;
  • -b:当文件存在时,覆盖前,为其创建一个备份;
  • -f:若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录;
  • -i:交互式操作,覆盖前先行询问用户,如果源文件与目标文件或目标目录中的文件同名,则询问用户是否覆盖目标文件。用户输入”y”,表示将覆盖目标文件;输入”n”,表示取消对源文件的移动。这样可以避免误将文件覆盖。
  • --strip-trailing-slashes:删除源文件中的斜杠“/”;
  • -S<后缀>:为备份文件指定后缀,而不使用默认的后缀;
  • --target-directory=<目录>:指定源文件要移动到目标目录;
  • -u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。

实例:

将目录/usr/men中的所有文件移到当前目录(用.表示)中:

mv /usr/men/* .

rm命令

删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉。对于链接文件,只是删除整个链接文件,而原有文件保持不变。

选项:

  • -d:直接把欲删除的目录的硬连接数据删除成0,删除该目录;
  • -f:强制删除文件或目录;
  • -i:删除已有文件或目录之前先询问用户;
  • -r或-R:递归处理,将指定目录下的所有文件与子目录一并处理;
  • --preserve-root:不对根目录进行递归操作;
  • -v:显示指令的详细执行过程

dd命令

复制文件并对原文件的内容进行转换和格式化处理。建议在有需要的时候使用 dd 对物理磁盘操作,使用 dd 对磁盘操作时,最好使用块设备文件。

选项:

  • bs=<字节数>:将 ibs(输入)与 obs(输出)设成指定的字节数;
  • cbs=<字节数>:转换时,每次只转换指定的字节数;
  • conv=<关键字>:指定文件转换的方式;
  • count=<区块数>:仅读取指定的区块数;
  • ibs=<字节数>:每次读取的字节数;
  • obs=<字节数>:每次输出的字节数;
  • of=<文件>:输出到文件;
  • seek=<区块数>:一开始输出时,跳过指定的区块数;
  • skip=<区块数>:一开始读取时,跳过指定的区块数;

实例:

dd if=/dev/zero of=sun.txt bs=1M count=1

该命令创建了一个1M大小的文件sun.txt,其中参数解释:

  • if 代表输入文件。如果不指定if,默认就会从stdin中读取输入。
  • of 代表输出文件。如果不指定of,默认就会将stdout作为默认输出。
  • bs 代表字节为单位的块大小。
  • count 代表被复制的块数。
  • /dev/zero 是一个字符设备,会不断返回0值字节(\0)。

file命令

用来探测给定文件的类型。file命令对文件的检查分为文件系统、魔法幻数检查和语言检查3个过程。

选项:

  • -f<名称文件>:指定名称文件,其内容有一个或多个文件名称时,让file依序辨识这些文件,格式为每列一个文件名称;
  • -b:列出辨识结果时,不显示文件名称;
  • -c:详细显示指令执行过程,便于排错或分析程序执行的情形;
  • -L:直接显示符号连接所指向的文件类别;
  • -m<魔法数字文件>:指定魔法数字文件;
  • -z:尝试去解读压缩文件的内容。

参数:

文件:要确定类型的文件列表,多个文件之间使用空格分开,可以使用shell通配符匹配多个文件。

实例:

显示文件类型

[root@localhost ~]# file install.log
install.log: UTF-8 Unicode text

[root@localhost ~]# file -b install.log   <== 不显示文件名称
UTF-8 Unicode text

[root@localhost ~]# file -i install.log   <== 显示MIME类别。
install.log: text/plain; charset=utf-8

[root@localhost ~]# file -b -i install.log
text/plain; charset=utf-8

显示符号链接的文件类型

[root@localhost ~]# ls -l /var/mail
lrwxrwxrwx 1 root root 10 08-13 00:11 /var/mail -> spool/mail

[root@localhost ~]# file /var/mail
/var/mail: symbolic link to `spool/mail'

[root@localhost ~]# file -L /var/mail
/var/mail: directory

[root@localhost ~]# file /var/spool/mail
/var/spool/mail: directory

[root@localhost ~]# file -L /var/spool/mail
/var/spool/mail: directory

以上就是本次介绍的全部知识点内容,感谢大家的学习和对脚本之家的支持。

相关文章

  • linux下system函数的简单分析

    linux下system函数的简单分析

    这篇文章主要简单分析了linux下system函数,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • Mac OS X中设置VIM语法高亮的方法

    Mac OS X中设置VIM语法高亮的方法

    大家应该都知道在默认情况下,使用vim打开文本文件都是灰蒙蒙的一片,当我们要在其中查询某个字符的时候也看的不清楚。但是,其实是有办法解决这种困境。下面这篇文章就给给大家分享了在Mac OS X中设置VIM语法高亮的方法,有需要的朋友们可以参考借鉴,下面来一起看看。
    2016-11-11
  • Linux网络搭建基础实验(1)

    Linux网络搭建基础实验(1)

    这篇文章主要为大家详细介绍了Linux网络搭建基础实验过程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • Windows下PHP安装路径配置错误导致Apache无法启动的解决方法

    Windows下PHP安装路径配置错误导致Apache无法启动的解决方法

    这篇文章主要介绍了Windows下PHP安装路径配置错误导致Apache无法启动的解决方法,本文可以说是一个引号引发的悲剧,需要的朋友可以参考下
    2014-09-09
  • apache的rewrite规则使用说明

    apache的rewrite规则使用说明

    这篇文章主要介绍了apache的rewrite规则使用说明,并带有参考示例,需要的朋友可以参考下
    2014-04-04
  • linux服务器安装SonarQube代码检测工具的详细步骤

    linux服务器安装SonarQube代码检测工具的详细步骤

    这篇文章主要介绍了linux服务器安装SonarQube代码检测工具,本文分步骤给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • 实战基本的Linux sed命令示例代码

    实战基本的Linux sed命令示例代码

    Linux流编辑器是在数据中心中运行脚本的一种有用方法。通过这些命令示例,您可以开始熟悉sed,需要的朋友可以参考下
    2018-10-10
  • 详解Linux上svn命令行批量操作

    详解Linux上svn命令行批量操作

    这篇文章主要介绍了详解Linux上svn命令行批量操作的相关资料,linux上的svn命令行批量添加或删除文件,需要的朋友可以参考下
    2017-07-07
  • Apache 获取真实ip的配置的实现方法

    Apache 获取真实ip的配置的实现方法

    这篇文章主要介绍了Apache 获取真实ip的配置的实现方法的相关资料,希望通过本文能帮助到大家,让大家实现这样的功能,需要的朋友可以参考下
    2017-10-10
  • Linux下“/”和“~”的区别详解

    Linux下“/”和“~”的区别详解

    这篇文章主要介绍了Linux下“/”和“~”的区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09

最新评论