Bash特性:命令返回值与命令行展开

1、Bash命令返回值

    包括:

                状态返回值:表示命令执行成功与否,该状态值存放在环境变量$? 中

                                    0 : 命令执行成功

                                    1~255:命令执行失败


                命令返回值:  执行命令本身返回的数据

示例:            >> ll x

                            drwxrwxr-x 4 vn0eco6 vn0eco6 24 Aug 20 09:52 y1  

                            drwxrwxr-x 2 vn0eco6 vn0eco6  6 Aug 20 09:52 y2

                       >> echo $?

                            0

                       >> lll x

                            -bash: lll: command not found  ##命令返回值

                        >> echo $?    ##状态返回值

                             127

                       >> ll xx

                             ls: cannot access xx: No such file or directory

                       >> echo $?

                            2

2、命令行展开

            以逗号分割的路径列表,将被展开为多个路径

示例1:

>>mkdir -p /tmp/mysysroot/{bin,sbin,etc/sysconfig/network-scripts,usr/{bin,sbin,local/{bin,sbin,etc,lib},lib,lib64},var/{cache,log,run}}

>> tree /tmp/mysysroot/

/tmp/mysysroot/

├── bin

├── etc

│   └── sysconfig

│      └── network-scripts

├── sbin

├── usr

│   ├── bin

│   ├── lib

│   ├── lib64

│   ├── local

│   │   ├── bin

│   │   ├── etc

│   │   ├── lib

│   │   └── sbin

│   └── sbin

└── var

    ├── cache

    ├── log

    └── run


示例2:

>> mkdir -p /tmp/{a,b}_{c,d}

>>tree

.├── a_c

├── a_d

├── b_c

├── b_d

示例3:

>>mkdir -p /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig},lib/modules,lib64,proc,sbin,sys,tmp,user/local/{bin,sbin},var/{lock,log,rn}}

>>tree /tmp/mylinux/

/tmp/mylinux/

├── bin

├── boot

│   └── grub

├── dev

├── etc

│   ├── rc.d

│   │   └── init.d

│   └── sysconfig

├── lib

│   └── modules

├── lib64

├── proc

├── sbin

├── sys

├── tmp

├── user

│   └── local

│      ├── bin

│      └── sbin

└── var

    ├── lock

    ├── log

    └── rn

3、如果在命令中引用其他命令的的结果,可以通过$() 或 `COMMAND`

>>echo $(date)

Wed Aug 22 10:22:29 UTC 2018

>>$ echo `date`

Wed Aug 22 10:22:34 UTC 2018

你可能感兴趣的:(Bash特性:命令返回值与命令行展开)