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

相关推荐

  • Linux文本处理三剑客之sed

    处理文本工具sed sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件,简化对文…

    Linux干货 2016-08-15
  • 学习宣言

    现在,青春是用来奋斗的;将来,青春是用来回忆的。   人生之路,有坦途也有陡坡,有平川也有险滩,有直道也有弯路。青年面临的选择很多,关键是要以正确的世界观、人生观、价值观来指导自己的选择。无数人生成功的事实表明,青年时代,选择吃苦也就选择了收获,选择奉献也就选择了高尚。青年时期多经历一点摔打、挫折、考验,有利于走好一生的路。要历练宠辱不惊…

    Linux干货 2016-12-29
  • Linux三剑客之sed

    sed 简介 sed 工作原理 命令格式 常用选项: 地址定界: 编辑命令: 替换标记: sed元字符集(正则表达式) 高级编辑命令: sed用法实例 作业: 选定行的范围:,(逗号) 删除操作:d命令 显示模式空间内容 追加(行下):a\命令 插入(行上):i\命令 退出:q命令 多点编辑:e命令 从文件读入:r命令 写入文件:w命令 替换操作:s命令 替…

    Linux干货 2016-08-11
  • 【26期】Linux第六周学习小总结

        时光匆匆,一周时光悠然而逝,带给我们的只有知识的充实,和每日强大的自信心,学习的日益深入,慢慢的然我们的思绪和状态带回高中时光,吃饭上课睡觉三点一线的生活,枯燥中透露出稍微的晨曦,让每个明天都充满着期待,那我们的本周的学习中磁盘管理算是占了很大的比重,毕竟关于磁盘的知识很是难理解,那我就把本周的知识回顾温习,同时分享给大家。 &n…

    2017-08-19
  • 第四天作业

    1 、创建 用户gentoo ,附加组为bin 和root ,默认shell为/bin/csh ,注释信息为"Gentoo Distribution" 1 useradd -G bin,root -s /bin/csh -c "Gentoo Distribut…

    Linux干货 2016-08-04
  • 关于grub的一些实验

    关于grub的一些实验 手动引导进入系统 也就是写 grub.conf文件 改grub界面图片 1、进入/root/grub目录发现里面有很多东西,查看grub.conf可以知 2、我们查看下图片的格式 这是一个gzip压缩的图片文件 用vim可以查看开头经查得知这是一个640*480的文件而且只支持14色 3、自定义图片 先照一张图片用工具改成这种想要的格…

    Linux干货 2016-09-16

评论列表(1条)

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

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