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)
N24-wenxuanN24-wenxuan
上一篇 2016-11-05
下一篇 2016-11-05

相关推荐

  • 初学Linux之文本处理工具和正则表达

    1、各种文本工具来查看、分析、统计文本 
    2、grep 
    3、正则表达式和扩展正则表达式 
    4、egrep

    2017-12-09
  • 常用进程查看工具

    进程是我们学习Linux中常常接触的概念,他是程序被运行起来的一种表现形态。 了解进程的工作状态,管理进程的工作状态,可以让我们更清楚的知道,系统正在做什么,整体的进度是怎么样的。 想要了解进程的工作状态,我们就需要借助一些常用的工具来查看,想要对进程进行管理,我们也需要工具来实现。下面我们一起来看一看常用的查看进程工具有哪些,这些工具是如何使用的,有什么特…

    2017-05-09
  • LVM

    LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,它由Heinz Mauelshagen在Linux 2.4内核上实现,目前最新版本为:稳定版1.0.5,开发版 1.1.0-rc2,以及LVM2开发版。Linux用户安装Linux操作系统时遇到的一个常见的难以决定的问题就是如何正确地…

    Linux干货 2016-12-17
  • N23 9月底的

    1.linux下文件管理命令 cat 读取文件 或者连接显示touch 建立文件 改变时间 cp 复制文件 -f 强制复制 不论覆盖-r 连同子目录递归处理-l 建立硬链接-s 建立符号连接 rm 删除文件 -r 递归删除 连同子目录也一起干掉-f 强制 删除文件或者目录-d 直接删除目录 file 辨识文件类型 find 查找文件 whereis 查找文件…

    Linux干货 2016-09-25
  • N25-第4周作业(用户权限,grep用法)

    复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有访问权限.      [root@bogon ~]# chmod -R o=—,g=— /home/tuser1/ [root@bogon ~]# chmod -R o=,g= /home/tuser1/ 编辑/etc/…

    Linux干货 2016-12-26
  • 马哥教育网络班22期第5周课程作业

    1、显示当前系统上root、fedora或user1用户的默认shell; cat /etc/passwd | grep ^root | cut -d: -f7 2、找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:hello(); …

    Linux干货 2016-12-05

评论列表(1条)

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

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