BASH的基本特性2:常用文件管理指令


    一.cp,mv,rm的使用

    此段内容是接上篇学习BASH基本特性的后续学习内容,这里还是着重介绍BASH本身可以应用的一些指令相关内容

  1.cp:复制文件或目录

  常规语法:cp [option]... [source] DESK(单源复制格式). 表示将source复制在DESK上。如果将多个文件复制到一个目录中:cp [option]... [source]... directory(多源复制格式)

  cp命令默认是将原文件内容覆盖,所以在root账号下,为了保持系统安全性防止文件内容丢失,CentOS6以后将cp设置为cp -i的别名,当覆盖内容时系统会提示。同样在mv与rm命令也设置了别名。alias与unalias是别名的设置与取消命令。eg:alias cp=‘cp -i’

  其中常用options的含义分别为:

  -i:交互式命令

  -r(R):递归复制目录以及内部的所有文件

  -P:保留原文件的所有属性

  -f:force,强制执行复制命令


举例:~]#cp -rp /etc/issue/  /testdir/  这个命令表示为将/etc目录下的/issue文件复制到/testdir目录下并相同命名为issue文件


 2.mv与rm

  mv与rm的语句用法与cp基本相同,其中mv表示移动文件,rm表示删除文件。其中rm命令的使用受到系统自我保护的相关设置,用以防止误删关键文件

   

    二.文件时间戳的概念

  1.stat命令

  stat命令:显示文件或文件系统的状态

  stat [option]... file

  输入指令查看文件时,其中会显示三个时间概念:atime,mtime,ctime

  atime:最近一次查看文件时间

  mtime:最近一次更改文件数据(data)的时间

  ctime:最近改动元数据(metadata)的时间

  touch指令可以修改时间戳的显示内容,同时我们经常使用touch指令创建目录


    三.文件通配符

  当在系统中查找文件时,由于文件命名多而不系统,人们在查找时需要根据相关的字符范围查找,于是Linux中定义了多个文件通配符的格式,具体如下个例:

  *p:所有以p结尾

  p*:所有以p开头

  *p*:所有带有p的字符

  p?:所有以p开头后面带有一个字符的

  ?p:所有以p结尾前面带有一个字符的

  [0-9]:单个字符以数字为范围的

  [a-z]:单个字符以小写字母为范围的

  [A-Z]:单个字符以大写字母为范围的


示例:~]#ls /etc/l*[0-9][0-9]*'.conf'  表示为展开在/etc目录下所有以l开头中间有连续两位数字并使用.conf结尾的文件的列表