bash的工作特性之命令执行状态返回值和命令行展开

bash的工作特性之命令执行状态返回值和命令行展开

执行状态返回值

    Linux下每一条命令或每一个进程执行完成会返回一个状态码.

0:成功执行 
1-255:执行过程中出现异常或非正常退出 
在Shell脚本中,最后执行的一条命令将决定整个shell脚本的状态. 
此外,shell的内部命令exit也可以随时终止shell脚本的执行,并返回Shell脚本的状态码.

    当shell脚本执行结束前的最后一个命令是不带参数的exit ,那么 shell脚本的最终返回值就是exit语句前一条语句的返回值,根据这个值可以判断脚本成功执行与否.

    $? 可以查看最后一条命令的返回值,该变量可以在shell 脚本中的任何地方使用.

例如返回上一个命令的执行状况

1.[root - gwx-st ~]#>ehco $?
2.-bash: ehco: command not found
3.[root - gwx-st ~]#>echo $?
4.127
5.[root - gwx-st ~]#>echo $?
6.0
7.

命令行展开

    bash中可以使用{}来对其中的内容展开后分别进行操作。

例如:/tmp/{x,y} 相当于/tmp/x和/tmp/y 
下面我们使用命令行展开功能在/tmp/sysroot下创建FHS

1.[root - gwx-st ~]#>\tree /tmp/sysroot/
2./tmp/sysroot/
3.
4.0 directories, 0 files
5.[root - gwx-st ~]#>mkdir -p /tmp/sysroot/{bin,boot/grub,dev,lib/modules,etc/{rc.d/init.d/,sysconfig/network-scripts},lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{lock,log,run}}
6.[root - gwx-st ~]#>\tree /tmp/sysroot/
7./tmp/sysroot/
8.|-- bin
9.
|-- boot
10.
|   `-- grub
11.
|-- dev
12.
|-- etc
13.
|   |-- rc.d
14.
|   |   `-- init.d
15.
|   `-- sysconfig
16.
|       `-- network-scripts
17.
|-- lib
18.
|   `-- modules
19.
|-- lib64
20.
|-- proc
21.
|-- sbin
22.
|-- sys
23.
|-- tmp
24.
|-- usr
25.
|   `-- local
26.
|       |-- bin
27.
|       `-- sbin
28.`-- var
29.    
|-- lock
30.    
|-- log
31.    `-- run
32.
33.24 directories, 0 files
34.

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

(0)
上一篇 2016-11-05 09:14
下一篇 2016-11-05 15:22

相关推荐

  • LAMP的编译安装

    一、编译安装amp: (1)系统环境:centos6,7 httpd依赖于apr和apr-util appache protable runtime (2)开发环境: Development Tools,Server Platform Development (3)各程序的版本: httpd:2.2,2.4 php:5.x mysql:5.1,5.5,5.6…

    Linux干货 2016-10-17
  • 高级文件系统管理

    高级文件系统管理 一、如何创建新的swap分区  答:1.在/dev/sdc上创建新的分区。并使得ID为82的linux swap;类型。   2.创建文件系统 mkswap  -L  SWAP_SDC1  /dev/sdc1     3.在/etc/fstab中进行修改   4…

    Linux干货 2016-08-30
  • ls的常用用法

    第一个命令

    2018-03-26
  • nfs实验

    实验要求: (1) 创建一个共享mydata,路径为/mysql/data,客户端1挂载至/mydata;而后客户端1主机安装mysql或mariadb,将数据目录设定为/mydata,要确保mysql服务能正常 运行,但数据目录位于nfs server上; (2) 客户端2主机使用类似客户端1主机的方式挂载mydata共享至本地的/mydata目录,而后,…

    Linux干货 2016-10-24
  • sed简介

    sed是什么 sed是linux文本处理工具三剑客(grep,sed,awk)之一,用来处理文本的流编辑工具。主要用来编辑一个或多个文件,简化重复操作文件。 sed的工作原理和相关概念 sed是行处理的模式,针对文件内容从上往下一行一行地读取。每行的操作步骤如下示意图: sed的语法格式 sed [OPTION]… 'script' …

    Linux干货 2016-10-09
  • 2016/10/14作业

    2016/10/14作业: ##操作类: 1. 设置自己的终端提示符,要求字符终端登录时: a> 需要带颜色  b> 需要显示当前执行到了第几条命令  c> 显示当前登录终端,主机名和当前时间 答:要在用户登录时终端提示符,需要更改当前系统的环境变量: /etc/bashrc文件 #[ "$PS1" …

    Linux干货 2016-10-19

评论列表(1条)

  • 马哥教育
    马哥教育 2016-11-10 17:16

    内容比较简单,排版比较不错,继续加油~