Linux上文件管理命令、元素据及时间戳、bash的工作特性回显和命令展开、定义别名,命令引用。

文件管理命令:

mkdir 创建空目录

语法:

mkdir [选项]…目录…

选项:

  • -P:逐层创建目录。
  • -v:显示过程。
  • -m:直接给定权限。
注意:路径的基名为命令作用对象。基名路径必须存在。

示例

创建/tmp/x1/a/a1和/tmp/x1/b

imger


rmdir 移除空目录

语法

rmdir [选项]…目录…

选项:

  • -p:删除子级后,向继续父目录逐层删除。
  • -v:显示过程

示例

删除/tmp/x1/a/a1和/tmp/x1/b

imger


cp命令:copy

是将源文件(suorce)复制到目标文件(dastination/DEST)

复制文件可以分为两种:

  • 单源文件复制:
    • 如果 目录DEST不存在,则会先创建文件,并赋值源文件下的数据流到DEST中;
    • 如果DEST存在:
      • 如果DEST是目录文件并且包含数据文件,则会覆盖目标文件;
      • 如果DEST是目录文件,则现在DEST目标下创建一个与源文件同名的文件,并将源文件的数据流复制DEST的目录文件内。
  • 多源复制:
    • 如果DEST不存在便会提示错误。
    • 如果DEST是目录文件,则现在的DEST目标下创建一个与源文件同名的文件,并将源文件的数据流复制到DEST目录文件内。

语法:

  • 单源复制:
    • cp [选项]…[T] SOURCE DEST
  • 多源复制:
    • cp [OPTION]… SOURCE… DIRECTORY
    • cp [OPTION]… -t DIRECTORY SOURCE…

常用选项:

  • -i:交互式复制,即覆盖之前提醒用户确认;
  • -f:强制覆盖目标文件;
  • -r -R:递归复制目录;将目录下的文件一并复制过去
  • -d: 复制符号链接本身,而非其指向的源文件。
  • -a: -dR –preserve=all,archive,用其实现归档;
  • -p:保留保留源文件所有者的属性
    • mode:权限
    • ownership:属主属组
    • timestamps:时间戳
    • context:安全标签
    • xattr:扩展属性
    • links:符号链接
    • all:上述所有属性

示例:

10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
多源复制需要目标目录存在,所以首先建立/tmp/mytest1目录

执行命令 cp /etc/p*[^0-9] /tmp/mytest1

imger

11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
多源复制需要目标目录存在,所以首先建立/tmp/mytest2目录

执行命令 cp -a /etc/*.d /tmp/mytest2

imger

12、复制/etc目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。
多源复制需要目标目录存在,所以首先建立/tmp/mytest3目录

imger

mv命令:move

  • 源文件复制到指定的目录下,文件名不变。如果目标文件不是目录文件则会变更目标文件名,并覆盖以存在的同名文件。
  • 如果是在同目录下作重命名。多个源复制到目标文件时保存源文件名不变。

语法:

  • mv [OPTION]…SUORCE DEST
  • mv [OPTION]…SUORCE…DEST
  • mv [OPTION]…target-directory=DIRECTORY SOURCE…

选项:

  • -i:交互式移动,覆盖前提示。
  • -f:覆盖前永不提示。
  • -b:档文件存在时,覆盖前为其创建一个备份。
  • -S<后缀>:为备份文件指定后缀,而不是用默认的后缀。
  • -u:当源文件与目标文件重复且目标文件比较新或目标文件不存在时,才执行移动操作。
  • –target-directory=DIRECTORY:移动全部“源文件”参数到“目录”中。

示例:

1、移动sys符号链接文件到/tmp/kernel并备份

imger


rm命令:

移除每个指定的文件,默认情况下,他不能移除目录。但当使用-r或者-R选项时,在指定目录下的整个指定的目录树都会被移除。

语法:

rm [OPTIONS]…FILE…

常用选项:

  • -i:提示是否移除每个文件。如果是则删除,否行则跳过。
  • -f:不提示直接删除
  • -r:递归的移除目录中的每一个文件

示例:

1、删除之前的演示目录/tmp/kernel

imger


元数据

所有文件系统中的数据分为数据和元数据。数据是指普通文件中的实际数据,元数据是指这个文件的的特征信息,包含访问权限、文件的拥有者和文件数据的块分布信息等。

时间戳metadata: :

  • access time:最近访问 [简称a time]:2017-11-27 21:46:04.519521528 +0800
  • modify time:最近更改 [简称m time]:2017-11-27 21:46:04.519521528 +0800
  • change time:最近改动 [简称c time]:2017-11-27 21:46:04.519521528 +0800

stat 命令

显示文件或文件系统的状态。

格式:

stat FILE…

touch 命令

触摸改变文件的时间戳

选项:
  • -c:指定的文件路径不存在时不予创建。
  • -a:仅修改 acces time
  • -m:仅修改 modify time
  • -t:STAMP [[CC]YY]MMDDhhmm[.ss]

bash的基础特性之一:查看命令的执行状态结果。

bash命令执行时都会将末次执行的命令状态都将保存与bash的特殊变量$?中,可以使用echo $?进行查看执行命令结果。

  • 查看命令装来确认命令是否执行成功,返回值为0时标示成功。
  • 根据命令的功能呢不同返回值为1-255之间的任意数则是标示命令执行失败。

格式:

$?

示例:

1、查看ls的执行状态返回值

imger

2、查看符号链接文件的第一行,查看错误返回值。

imger

3、ls /var 将结果输出给 /dev/null 查看返回值

imger

4、创建一个tfile开头后是当前是日期和时间的文件,文件名为:tfile-2016-05-27-09-32-22

miger

bash的基础特性之一:命令行展开。

  • ~:自动展开为用户的家目录,或指定的用户的家目录。
  • {}:可承载一个以逗号分隔的路径列表,并能够将其展开为多个路径。

示例 1

创建/tmo目录下的a_b、a_d、b_c、b_d

mkdir -pv /tmp/{a,b}_{c,d}

imger


alias命令:

语法:

定义别名:alias 别名=命令
撤销别名: unalias 别名

示例:

给ifconfig 设置别名为ifc,。

imger

使用命令引用另一个命令的结果创建文件。

创建/tmp/mylinux目录下的:

mkdir -p /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{lock,log,run}}

imger


6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现1位数字(可以有其他字符)的文件或目录。
在/var下新建了3个文件目录分别是:lock99a、 look8a、like55a、

执行命令 ls /var/l*[0-9]*[a-z]

imger

7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。
在/var下新建了3个文件目录分别是:9998a、8888a、66a.
执行命令 ls -d /etc/[0-9]*[a-z]

imger

8、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。
在/etc下创建9a998

执行命令 ls -d /etc/[0-9][A-Z,a-z]*

imger

10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
多源复制需要目标目录存在,所以首先建立/tmp/mytest1目录

执行命令 cp /etc/p*[^0-9] /tmp/mytest1

imger

11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
多源复制需要目标目录存在,所以首先建立/tmp/mytest2目录

执行命令 cp -a /etc/*.d /tmp/mytest2

imger

12、复制/etc目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。
多源复制需要目标目录存在,所以首先建立/tmp/mytest3目录

imger


本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/89806

(0)
N28_刚好遇到小熊猫N28_刚好遇到小熊猫
上一篇 2017-12-10 20:53
下一篇 2017-12-10 21:31

相关推荐

  • Bashe Shell之数组及bash配置文件解析

    数组   数据结构,数据序列,保存了连续的多个数据,可以使用索引获取相关元素,相当于多个变量的集合   §数组名和索引 索引:编号从0开始,属于数值索引   注意:所以可支持使用自定义的格式,而不仅是数值格式,即关联索引,bash4.0版本之后开始支持,bash的数组支持稀疏格式(索引不连续)   §声明数组 &nbs…

    Linux干货 2016-08-24
  • N26-第二周作业-邢岩(2)

     马哥门徒-N26-邢岩   我们接着说今天的分享,接着,我们来看看bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容好了。    1.bash的基础特性之:命令的执行状态结果      bash通过状态返回值来输出此结果:       成功:0 …

    Linux干货 2017-02-10
  • sed命令初识

           sed是一种流编辑器,它是文本处理中非常常用的工具,能够配合正则表达式使用。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自…

    Linux干货 2017-12-03
  • MySQL基础知识

    1、SQL:结构化查询语言(Structured Query Language): DDL:Data Definition Language(数据定义语言): 其语句包括动词CREATE和DROP。在数据库中创建新表或删除表(CREAT TABLE 或 DROP TABLE);为表加入索引等。DDL包括许多与人数据库目录中获得数据有关的保留字。它也是动作查询…

    2017-11-20
  • chrony、sudo、rsyslog

    chrony 程序环境: 配置文件:/etc/chrony.conf 主程序文件:chronyd 工具程序:chronyc unit file: chronyd.service 配置文件:chrony.conf server:指明时间服务器地址; allow NETADD/NETMASK allow all:允许所有客户端主机; deny NETADDR/N…

    Linux干货 2017-06-13
  • Linux系统进程管理

    本章学习内容     ——进程概念     ——进程创建、切换和撤销     ——进程调度     ——进程分类     ——进程状态 &n…

    Linux干货 2016-09-13