bash的命令执行状态返回值及命令行展开详解

命令执行状态返回值及命令行展开是bash的2个基本特性,其详细特点及应用如下:

 

一、命令执行的状态结果:bash通过状态返回值来输出此结果

                成功:0

                失败:1-255

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

       如:ls /etc

           echo $?

           结果会发现命令下方会弹出一个数字0   这就表示这个命令是执行成功了

            ls /etccc

            echo $?

            结果发现弹出一个数字2    表示命令执行失败

        命令正常执行时,有的还会有命令返回值

            根据命令及其功能不同,结果各不相同

        引用命令的执行结果:

            $(COMMAND)

             或‘COMMAND'

             如:date  查看系统日期

              SUN NOV 6 09:29:17

                 date +%H-%M-%S    以横杠连接日期的形式显示

                 09-30-32

                 mkdir $(date +%H-%M-%S)   将date +%H-%M-%S这一命令的结果作为一个变量参数,将他作为一个目录来用

                 ls

                 09-35-03           目录

二、命令行的展开

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

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

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

如:1)创建/tmp/x/y1,/tmp/x/y2,/tmp/x/y1/a,/tmp/x/y1/b

    mkdir -pv /tmp/{x/y1/{a,b},y2}  

    2)创建a_c,a_d,b_c,b_d

    mkdir -v {a,b}_{c,d}

    3)创建/tmp/mylinux目录下的:

    mylinux/

           bin

           boot

               grub

           dev

           etc

               rc.d

                    init.d

               sysconfig

                    network-scripts

            lib

               modules

            lib64

            usr

                local

                     bin

                     sbin

 mkdir -pv /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,usr/local/{bin,sbin}}

   

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

(2)
N24_yushanN24_yushan
上一篇 2016-11-06
下一篇 2016-11-06

相关推荐

  • 磁盘文件挂载与卸载

    挂载(mount)何为挂载?挂载指将文件系统与根文件系统的某个现存的目录建立起来的关联关系,这样我们就可以将目录作为访问磁盘文件的入口,进行存取交互。挂载点:挂载点指的是被挂载的对象,通常挂载点是一个目录,不过有时候也有文件作为挂载点格式:mount 设备 挂载点 ;此挂载方法味临时挂载,只在当前的shell中有效,退出则清除挂载关联设备文件在/dev/sd…

    Linux干货 2017-04-24
  • do some test

    1、简述TCP三次握手四次挥手过程及各过程中客户端和服务器端的状态。     三次握手:         a(syn-send) -> send syn -> b(listen)         a(syn-send) <- receive …

    Linux干货 2016-06-12
  • 第一周作业

    一:计算机的组成和功能 主要分为五个部分:控制器、运算器、存储器、输入、输出 CPU :包含控制器和运算器、寄存器、缓存 存储器:内存,RAM(Random Access Memory) 输入:下指令,提供数据等 输出:输出数据加工的结果     微型计算机系统组成:      …

    Linux干货 2016-12-06
  • LVS-NAT+LVS-NAT基于NFS做wordpress负载均衡实验

    Lvs-nat实验 实验设备:三台centos虚拟机 Director:DIP:10.0.0.254  VIP:192.168.208.129 RS1:RIP:10.0.0.1 RS2:RIP:10.0.0.2   首先都安装ipvsadm、telnet、httpd   配置网卡:RS2:hostonly模式:10.0.0.2/24 配置…

    2017-11-21
  • 高考作业

    1、简述TCP三次握手四次挥手过程及各过程中客户端和服务器端的状态。 TCP三路握手,作用为完成三次握手,主机A与主机B开始传送数据。 第一次握手:客户端A(状态为SYN_SEND)发送位码为syn=1,随机产生seq number=1234567的数据包到服务器,服务器B(状态为LISTEN)由SYN=1知道,客户端A要求建立联机; 第二次握手:服务器B(…

    Linux干货 2016-06-22
  • Redis基于keepalived的高可用实践

    接着上一章节来: Redis基于keepalived的高可用实现 方案拓扑图 测试方案 1.       手动关闭AppM keepalived进程确认keepalived主从变化,AppS1是否变更为主 2.       开启keepal…

    2015-03-05

评论列表(1条)

  • 马哥教育
    马哥教育 2016-11-10 19:54

    内容上能再扩充下会更好~~继续加油~