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

相关推荐

  • Linux中正则表达式和grep的使用

    正则表达式在Linux经常配合grep,sed和awk等用于搜寻关键字。正则表达式分为正则表达式和扩展正则表达式: 一、正则表达式 1.1 元字符: .:匹配任意字符    []:匹配[]中的任意一个字符 [^]:匹配[]以外的任意字符 [:alpha:]大小写英文字母 [:digit:]:十进制数字 [:xdigit…

    Linux干货 2017-04-08
  • centos7上实现corosync V2 + pacemaker + pcs | crmsh备忘录

    1、集群配置的前提: 一、时间同步(ntpdate做crontab定时任务) 二、主机名和IP相互解析 三、基于ssh密钥主机互信 #ssh-keygen -t rsa #ssh-copy-id -i   集群的全生命周期管理工具: pcs: agent(pcsd) crmsh: agentless (pssh)     2、安…

    2017-11-15
  • 实验:系统启动和内核管理

    实验:bootloader 破坏stage1: 备份:dd if=/dev/sda of=/app/mbr bs=1 count=512 破坏:dd if=/dev/zero of=/dev/sda bs=1 count=446;此时/boot/grub/下的文件没有任何改动; 表现:stage1破坏后系统会直接进行光盘引导 修复1:救援模式–&…

    Linux干货 2017-05-14
  • 磁盘管理总结

    linux磁盘管理总结 一、向linux主机添加硬盘 不同类型的硬盘,linux需要不同的驱动。kernel需要驱动,硬盘是基本的硬件设备,驱动一般不需要安装了。 (1)linux内核的设计架构,使用了模块。除了系统必须的驱动,一般以模块方式加载到内核中。内核的模块放在。/lib/modules内。 (2)linux一切皆文件,设备也是文件,ls -l 查看…

    Linux干货 2016-08-29
  • 基于CentOS7实现LAMP(上)

    基于CentOS7实现LAMP(上)   情景模式: (1)php以模块方式运行  提供两个虚拟主机;                    &nbs…

    Linux干货 2016-08-22
  • 学习宣言

    我是喻成,我参加了马帮第22期的linux运维网络班,于2016年8月开始跟随马哥学习linux, 我的学习宣言是:要享受学习的每一刻,我思故我在。

    Linux干货 2016-08-15

评论列表(1条)

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

    很棒,继续加油!