bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容

bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容

bash的基础特性:命令的执行状态结果

bash通过状态返回值来输出此结果:

    成功:0
    失败:1-255

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

    [root@localhost ~]# ls
    anaconda-ks.cfg
    [root@localhost ~]# echo $?
    0
    [root@localhost ~]# asd
    -bash: asd: command not found
    [root@localhost ~]# echo $?
    127
    [root@localhost ~]# 

bash的基础特性:命令行展开

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

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

实例

  • 创建/tmp目录下的:ac, ad, bc, bd
    [root@localhost ~]# mkdir -pv /tmp/{a_c,a_d,b_c,b_d}
    mkdir: created directory ‘/tmp/a_c’
    mkdir: created directory ‘/tmp/a_d’
    mkdir: created directory ‘/tmp/b_c’
    mkdir: created directory ‘/tmp/b_d’
    [root@localhost ~]# ll /tmp
    total 8
    drwxr-xr-x. 2 root root   6 Mar 11 22:46 a_c
    drwxr-xr-x. 2 root root   6 Mar 11 22:46 a_d
    drwxr-xr-x. 2 root root   6 Mar 11 22:46 b_c
    drwxr-xr-x. 2 root root   6 Mar 11 22:46 b_d
    
  • 创建目录结构
    [root@localhost ~]# mkdir -pv /tmp/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}}
    mkdir: created directory ‘/tmp/mylinux’
    mkdir: created directory ‘/tmp/mylinux/bin’
    mkdir: created directory ‘/tmp/mylinux/boot’
    mkdir: created directory ‘/tmp/mylinux/boot/grub’
    mkdir: created directory ‘/tmp/mylinux/dev’
    mkdir: created directory ‘/tmp/mylinux/etc’
    mkdir: created directory ‘/tmp/mylinux/etc/rc.d’
    mkdir: created directory ‘/tmp/mylinux/etc/rc.d/init.d’
    mkdir: created directory ‘/tmp/mylinux/etc/sysconfig’
    mkdir: created directory ‘/tmp/mylinux/etc/sysconfig/network-scripts’
    mkdir: created directory ‘/tmp/mylinux/lib’
    mkdir: created directory ‘/tmp/mylinux/lib/modules’
    mkdir: created directory ‘/tmp/mylinux/lib64’
    mkdir: created directory ‘/tmp/mylinux/proc’
    mkdir: created directory ‘/tmp/mylinux/sbin’
    mkdir: created directory ‘/tmp/mylinux/sys’
    mkdir: created directory ‘/tmp/mylinux/tmp’
    mkdir: created directory ‘/tmp/mylinux/usr’
    mkdir: created directory ‘/tmp/mylinux/usr/local’
    mkdir: created directory ‘/tmp/mylinux/usr/local/bin’
    mkdir: created directory ‘/tmp/mylinux/usr/local/sbin’
    mkdir: created directory ‘/tmp/mylinux/var’
    mkdir: created directory ‘/tmp/mylinux/var/lock’
    mkdir: created directory ‘/tmp/mylinux/var/log’
    mkdir: created directory ‘/tmp/mylinux/var/run’
    [root@localhost ~]# tree /tmp/mylinux
    /tmp/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
    
    24 directories, 0 files

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/92055

(0)
eighteenxueighteenxu
上一篇 2018-03-11 16:10
下一篇 2018-03-11

相关推荐

  • 条件选择if 条件判断case 文件查找 find locate 以及压缩和解压缩工具

    1 shell脚本编程之 条件选择if 条件判断case  2 文件查找 find locate 以及压缩和解压缩工具 过程式编程语言:  顺序执行  选择执行  循环执行 条件选择之 if语句 选择执行:   注意:if语句可嵌套    单分支 if 判断条件:then 条件为真的分…

    Linux干货 2016-08-15
  • Linux 系统中screen命令不能使用的解决办法,screen包的正确安装

           有些同学可能在安装完Linux发行版之后,发现screen功能不能实现,这是因为是实现该功能的包在安装系统的过程中没有安装上,这里我根据自己的经验介绍两种安装screen包的方法,用来你实现screen命令。 方法一、     条件:连网状态;   &nb…

    2017-07-12
  • 往死里苦练脚本啊啊啊啊啊啊啊~~~~~~~~~~~~~~~~

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #脚本内容 [root@centos script]# cat week9_title1.sh  #!/bin/bash #Author …

    Linux干货 2017-02-16
  • Linux之账号管理

    Linux之账号管理 一、新增与删除用户:useradd,相关配置文件,passwd,usermod,userdel 在Linux登录系统时会输入账号和密码,所以创建用户也需要这两个数据。新建用户用useradd命令,密码的给予则用passwd命令。 useradd 1.添加新用户 -u: -u  uid username 创建用户时指定uid(如…

    2017-07-23
  • RAID5的组建

        RAID5在实际场景中应用最多,RAID5最少使用3块硬盘,3块硬盘中允许1块硬盘损坏,RAID5它的最大特点是可以有一块硬盘做冗余,其使用率是 N-1存储空间(N表示硬盘数量)     首先创建分区,然后转换分区类型,最后保存退出。 注解:虚拟机总共有6块硬盘,我是从第3块硬盘开始做rai…

    Linux干货 2016-02-14
  • 脚本函数与程序包管理

    一、函数调用 1.while循环的特殊用法(遍历文件的每一行): while read line; do    循环体done < /PATH/FROM/SOMEFILE 依次读取/PATH/FROM/SOMEFILE文件中的每一行,且将行赋值给变量line示例:扫描/etc/passwd文件每一行,如发现GECOS字段为…

    Linux干货 2016-08-21