Bash的基础特性之命令执行状态返回值和命令行展开

Bash的基础特性之命令的执行状态

Linux的命令执行结果状态有两种,分别为:
1、成功
2、失败
bash使用特殊变量 $? 保存最近一条命令的执行状态结果
使用echo $? 命令来查看命令执行状态返回值:
0:成功
1-255:失败

示例:
        [root@localhost tmp]# echo$?
        -bash: echo127: 未找到命令
        [root@localhost tmp]# echo $?
        127
        [root@localhost tmp]# echo $?
        0

Bash的基础特性之命令行展开

以某些bash能够解释的符号来代替命令中的某些参数:
~:展开为用户的家目录
~USERNAME:展开为制定用户的家目录
{}:可承载一个以逗号分隔的列表,并将其展开为多个路径:
如: /tmp/{a,b}=/tmp/a,/tmp/b
  /tmp/{tom,jerry}/h1=/tmp/tom/h1,/tmp/jerry/h1

使用示例:
        创建/tmp目录下的test1和test2
        [root@localhost ~]# mkdir -v /tmp/{test1,test2}
        mkdir: 已创建目录 "/tmp/test1"
        mkdir: 已创建目录 "/tmp/test2"

命令行展开功能练习:

1、创建/tmp目录下的:a_c, a_d, b_c, b_d

    [root@localhost ~]# mkdir -v /tmp/{a,b}_{c,d}
    mkdir: 已创建目录 "/tmp/a_c"
    mkdir: 已创建目录 "/tmp/a_d"
    mkdir: 已创建目录 "/tmp/b_c"
    mkdir: 已创建目录 "/tmp/b_d"

2、创建/tmp/mylinux目录下的:

qq.png

命令如下:
[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: 已创建目录 "/tmp/mylinux"
mkdir: 已创建目录 "/tmp/mylinux/bin"
mkdir: 已创建目录 "/tmp/mylinux/boot"
mkdir: 已创建目录 "/tmp/mylinux/boot/grub"
mkdir: 已创建目录 "/tmp/mylinux/dev"
mkdir: 已创建目录 "/tmp/mylinux/etc"
mkdir: 已创建目录 "/tmp/mylinux/etc/rc.d"
\mkdir: 已创建目录 "/tmp/mylinux/etc/rc.d/init.d"
mkdir: 已创建目录 "/tmp/mylinux/etc/sysconfig"
mkdir: 已创建目录 "/tmp/mylinux/etc/network-scripts"
mkdir: 已创建目录 "/tmp/mylinux/lib"
mkdir: 已创建目录 "/tmp/mylinux/lib/modules"
mkdir: 已创建目录 "/tmp/mylinux/lib64"
mkdir: 已创建目录 "/tmp/mylinux/proc"
mkdir: 已创建目录 "/tmp/mylinux/sbin"
mkdir: 已创建目录 "/tmp/mylinux/sys"
mkdir: 已创建目录 "/tmp/mylinux/tmp"
mkdir: 已创建目录 "/tmp/mylinux/usr"
mkdir: 已创建目录 "/tmp/mylinux/usr/local"
mkdir: 已创建目录 "/tmp/mylinux/usr/bin"
mkdir: 已创建目录 "/tmp/mylinux/usr/sbin"
mkdir: 已创建目录 "/tmp/mylinux/var"
mkdir: 已创建目录 "/tmp/mylinux/var/lock"
mkdir: 已创建目录 "/tmp/mylinux/var/log"
mkdir: 已创建目录 "/tmp/mylinux/var/run"
[root@localhost ~]# tree /tmp/mylinux/
/tmp/mylinux/
├── bin
├── boot
│   └── grub
├── dev
├── etc
│   ├── network-scripts
│   ├── rc.d
│   │   └── init.d
│   └── sysconfig
├── lib
│   └── modules
├── lib64
├── proc
├── sbin
├── sys
├── tmp
├── usr
│   ├── bin
│   ├── local
│   └── sbin
└── var
    ├── lock
    ├── log
    └── run

 

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

(0)
641348038@qq.com641348038@qq.com
上一篇 2016-11-04
下一篇 2016-11-04

相关推荐

  • 逻辑卷LVM练习题

     2、新建用户archlinux,要求其家目录为/users/archlinux ,而后su切换至archlinux用户,复制/etc/pam.d目录至自己 的家目录 [root@Cloud /]#useradd -d /users/archlinux archlinux #新建用户archlinux [archlinux@Cloud ~]# getent…

    Linux干货 2017-03-16
  • 数组和字符串处理

    数组:存储多个元素的连续的内存空间,相当于多个变量的集合     1)定义数组:        declare -a ARRAY_NAME 定义普通数组 可省略declare -a ]#arr=(a b&nbs…

    Linux干货 2016-08-24
  • DNS服务

    名字解析,DNS服务,实现主从服务器,实现子域

    2018-01-22
  • rpm包管理与yum简要用法

    linux程序包管理 程序包:源代码 –> 目标二进制格式(二进制程序、库文件、配置文件、帮助文件)–> 组织成一个或有限的几个包文件 程序包管理器:        debian –> dpkg   以“.deb”结尾 &nb…

    Linux干货 2016-08-22
  • Hadoop HDFS分布式文件系统设计要点与架构

    Hadoop简介:一个分布式系统基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有着高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件…

    Linux干货 2015-04-13
  • Net22-第一周作业-linux基础知识

    1、描述计算机的组成及其功能。    计算机硬件由五大部件组成,分别是运算器、控制器、存储器、输入和输出设备组成。 其中,运算器和控制器合称为cpu,接受指令,加工数据。 存储器又分为内存和外存(硬盘、U盘等等),这里指的是内存,给cpu提供数据和指令。 输入设备对数据进行输入,如鼠标,键盘等。 输出设备对计算结果进行显示或者打印等,如显…

    Linux干货 2016-08-22

评论列表(1条)

  • 马哥教育
    马哥教育 2016-11-10 20:22

    内容比较简单,能再扩充下会更好~加油~