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

相关推荐

  • jobs简介

    jobs简介     jobs可以显示当前shell 环境中已启动的作业状态。     用linux的时候经常会碰到类似这种情形,复制,下载一个很大的文件或编辑一个文件,任务占据着界面不能做其他操作,这个时候想不暂停或中止任务去做别的操作就可以将正在执行的命令送往后台去运行。 作业:作业号     …

    Linux干货 2015-05-23
  • magedu_20160804

    文本处理工具和grep过滤工具以及正则表达式    一.文本处理工具相关命令    前面课程中曾经使用过cat,head,tail命令查看相关文件,head,tail分别查看文件开头、结尾的行信息。对于特定想要显示的信息则需要特定的文本查看指令,比如cut,sort,paste,uniq等。如下内容分别对每个…

    Linux干货 2016-08-08
  • 马哥教育网络22班第二周课程练习

    1,Linux上的文件管理类命令有哪些?其常用的使用方法机器相关实例演示 文件管理类命令:   cp 文件复制         常用选项:             -i:交互式           &…

    Linux干货 2016-08-30
  • 马哥linux0811作业内容

    总结位置变量$1,$2.. $10,$11…MAX 位置变量的含义分别就是代表第几个参数,$1就是脚本运行的第一个参数.$2就是第二个.以此类推.直到最后. $*,$@,$# 区别 特殊变量: $0 : 表示命令本身 $#:传递给命令的参数个数 $*:传递给脚本的所有参数(所有参数是一个整体的字符串) $@:传递给脚本的所有参数(各个参数都是独立…

    Linux干货 2016-08-19
  • 推荐-自动化运维之puppet小试牛刀

     一、puppet介绍       puppet是IT基础设施自动化管理工具,“她”能够帮助系统管理员管理基础设施的整个生命周期:供应(provisioning、配置(configuration)、联动(orchestration)及报告(reporting)。    …

    Linux干货 2016-04-05
  • 作业——拷贝命令及其链接库

    1),提示用户输入一个可执行命令的名称 2),获取此命令所依赖额所有库文件列表 3),复制命令至某目标目录(/mnt/sysroot,即把此目录当做根)下的对的路径中 bash,/bin/bash ===> /mnt/sysroot/bin/bash useradd, /usr/sbin/useradd ===> /mnt/sysroot/usr…

    Linux干货 2017-02-04