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

相关推荐

  • 1017作业

    1 生产环境发现一台服务器系统时间产生偏差,造成服务异常,请帮忙校正 ##先分析硬件时间不对还是系统时间不对,如果是系统时间不对: [root@localhost ~]# hwclock -w [root@localhost ~]#  ##如果是硬件时间不对: [root@localhost ~]#…

    Linux干货 2016-10-18
  • 马哥教育网络班N22期+第4周课程练习

    马哥教育网络班N22期+第4周课程练习 1. 复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 cp -rf /etc/skel /home/tuser1  chmod -R go= tuser1/ 2. 编…

    Linux干货 2016-09-19
  • shell脚本之条件测试

    组合条件测试:在多个条件间实现逻辑运算     与:[ condition1 -a condition2 ]、condition1 && condition2     或:[ condition…

    Linux干货 2015-08-24
  • Python基础篇之过程型程序设计

    一、Python过程型程序设计 面向过程 以指令为中心,由指令处理数据 如何组织代码解码问题 面向对象 以数据为中心,所有的处理代码都围绕数据展开 如何设计数据结构组织数据,并提供对此类数据所允许处理操作 简单方法: 1)、编译安装新版本至某特定路径 # yum install readline-devel # tar xf Python-2.7.6.tar…

    2018-01-11
  • 8-5作业

    1、取本机ip地址 ifconfig |grep -E -o  '(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])' 2、取各分区利…

    Linux干货 2016-08-08
  • LVM的创建与管理

    一、基本概念     1、LVM是逻辑盘卷管理(LogicalVolumeManager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。     2、why:通常在安装Linux系统的时候对磁盘进行一盘的分区,一旦日后分区或整个磁盘的空间…

    Linux干货 2016-06-22

评论列表(1条)

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

    很棒,继续加油!