N26-第二周作业-邢岩(2)

 马哥门徒-N26-邢岩


  我们接着说今天的分享,N26-第二周作业-邢岩(2)接着,我们来看看bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容好了。


 

 1.bash的基础特性之:命令的执行状态结果 

    bash通过状态返回值来输出此结果:

      成功:0

      失败:1-255

   命令执行完成之后,其状态返回值保存于bash的特殊变量$?中;

   命令正常执行时,有的还有命令的返回值:根据命令及其功能不同,结果各不相同;

 56.jpg 

 2.bash的基础特性之:命令行展开

   ~:自动展开为用户的家目录,或指定的用户的家目录

   {}:可承载一个以逗号分割的路径列表,并将其展开为多个路径

   例如:/tmp/{a,b}相当于 /tmp/a /tmp/b

 58.jpg


   不知道文艺青年们的fish是个神马样子的。。。N26-第二周作业-邢岩(2)别神游了,安心的回来做个练习题吧。

请使用命令行展开功能来完成以下练习:


   (1)、创建/tmp目录下的:a_c, a_d, b_c, b_d

55.jpg

   (2)、创建/tmp/mylinux目录下的:

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

53.jpg54.jpg


文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。


   

  文件可以分成两类数据:

    元数据:metadata 包括文件名称,文件大小,文件类型,访问权限,时间戳等等

     可以使用stat命令来查看。

    数据:data

  时间戳: 用touch命令来修改文件的时间戳信息

     access time:2017-02-04 15:30:21.454611619 +0800

     modify time:2017-02-04 15:29:57.681410179 +0800

     change time:2017-02-04 15:29:57.681410179 +0800

59.jpg

60.jpg


如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?


 1.alias命令可以定义一个命令的别名

    alias  name=’value’

    注意:别名只对当前shell有效,如果想永久生效,需要定义在配置文件中。

 2.引用命令的执行结果:

     $(COMMAND)

     或`COMMAND`

57.jpg


最后,我再来做一些练习题来结束我今天的分享。温故而知新,那么我就开始了。N26-第二周作业-邢岩(2)


显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。

显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。

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

/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22

复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。

复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。

复制/etc/目录下所有以lmn开头,以.conf结尾的文件至/tmp/mytest3目录中。


[root@localhost ~]# ls -d  /var/1*[0-9]*[[:lower:]]

/var/1a2sa

[root@localhost ~]# ls  -d /etc/[0-9]*[^0-9]

/etc/1aaa

[root@localhost ~]# ls -d  /etc/[^[:alpha:]][a-z]*

/etc/1aaa

[root@localhost ~]# touch /var/tfile-$(date +%F-%H-%M-%S)

[root@localhost ~]# cp -r /etc/p*[^0-9] /tmp/mytest1/

 

[root@localhost ~]# cp -r /etc/*.d /tmp/mytest2

[root@localhost ~]#cp -r /etc/[1mn]*.conf /tmp/mytest3

61.jpg62.jpg63.jpg64.jpg65.jpg


 Don't be so excited!虽然此刻我已经学完了上百个常用的Linux命令,但是光用命令本身是不能做好工作滴,任重而道远,还会有什么呢?且听下次分解吧,bye!

原创文章,作者:jeque,如若转载,请注明出处:http://www.178linux.com/68061

(0)
jequejeque
上一篇 2017-02-10 20:40
下一篇 2017-02-10 20:51

相关推荐

  • 脚本

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现;     #!/bin/bash     #     sum=0 &n…

    Linux干货 2016-12-23
  • bash的命令执行状态返回值及命令行展开详解

    命令执行状态返回值及命令行展开是bash的2个基本特性,其详细特点及应用如下:   一、命令执行的状态结果:bash通过状态返回值来输出此结果                 成功:0             …

    Linux干货 2016-11-06
  • 基于haproxy实现wordpress动静分离

    环境:centos 6.8 注:此处省略对于各服务器的IP配置。 一:图示讲解      用户访问vip,通过haproxy代理得到服务器的资源。此架构下基于keepalived对haproxy做负载均衡(此种两种软件装在同一台服务器),基于haproxy对Nginx和apache做负载均衡,Nginx和Apache使用共享存储…

    2017-05-18
  • ​Linux基础知识之文件权限

    实验环境:    Linux系统版本为CentOS6.8_x86_64版本,以root用户和sjsir用户远程用xshell连接系统,进行试验。 文本目录:    1.文件的属性    2.文件权限相关的命令    3.umask 新建文件和目录的默认权限   &nbs…

    Linux干货 2016-08-05
  • 7.22_Linux入门和帮助文件的使用

    Linux系统登录的两种方式 GUI:图形界面 Graphic User Interface 默认在Linux下面有三种可用的图形界面程序可选,分别为 1.gnome(c,图形库gtk) 2.kde(c++,图形库qt) 3.xface(轻量级桌面) 每一种图形界面下面开发的软件并不兼容,因为它们开发时候所用的开发语言也各不相同 启动方式:cli模…

    Linux干货 2016-08-04
  • 每日一练–8.10 脚本

    1、编写脚本/root/bin/systeminfo.sh,显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小。 2、编写脚本/root/bin/backup.sh,可实现每日将/etc/目录备份到/root/etcYYYY-mm-dd中 3、编写脚本/root/bin/disk.sh,显示当前硬盘分区中空…

    Linux干货 2016-08-15

评论列表(1条)

  • 马哥教育
    马哥教育 2017-02-26 15:26

    很棒,继续加油!