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、列出1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。[root@localhost ~]# who | cut -d ‘ ‘ -f1 | sort -u 2、取出最后登录到当前系统的用户的相关信息。[root@localhost ~]# who | tail -1 | export &am…

    Linux干货 2017-12-16
  • Vim

    vim编辑器         vim,可谓文本编辑界的大哥,功能强大无比,是进阶版的vi, vim 不但可以用不同颜色显示文字内容,还能够进行诸如 shell script, C program等程序编辑功能。 vim是一种模式化的编辑器  (vim自带教程,命令行中输…

    Linux干货 2016-08-09
  • N25-第二周博客作业

    1.linux上的文件管理命令:   cp命令:copy                 源文件;目标文件;  单源复制:cp [option]… [-T]  SOURCE DEST       &…

    Linux干货 2016-12-12
  • 马哥教育网络班22期-第1周博客作业2

    date命令 date – print or set the system date and time 显示或设置系统日期和时间 【SYNOPSIS】 date [OPTION]… [+FORMAT] 【OPTIONS】 -d:–date=STRING,显示字符串所指的日期与时间, 而不是当前时间,字符串前后必须加上双引号…

    Linux干货 2016-08-15
  • keepalived实现前端负载均衡器的高可用

    概述:     在之前的内容中,我们了解了当一个网站并发量大时,可以利用前端负载均衡器将用户请求调度到后端的多个real server上,实现分散服务压力,横向扩展的方式,形成LB集群,但是试想一下,作为前端负载均衡器:     如果是LVS,万一作为前端调度器的Director…

    Linux干货 2016-11-01
  • linux 网路管理路由和team网络组

    如何实现把linux当路由器来使用,实现不同网段之间的通信访问,这就是今天所要实现的路由配置   环境准备:4台虚拟机,两台中间两台作为路由器来使用(每天主机两块网卡),其他两台作为终端主机,目的是让不同网段的两台主机之间互相访问(这里在vmware里面做的实验,所以网卡的类型都设置为桥接)   拓扑图:   步骤一:将A、D两…

    Linux干货 2017-05-07

评论列表(1条)

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

    很棒,继续加油!