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.www58058.com/57346

(0)
641348038@qq.com641348038@qq.com
上一篇 2016-11-04 14:51
下一篇 2016-11-04 16:13

相關推薦

  • 堡壘機-麒麟開源堡壘機內置SSL VPN使用指南

      一、安裝 (一)確定服務器的操作系統位數 Windws xp、2000、2003系統,在我的電腦屬性里,可以很明顯地看到標識。如果沒有注明是64位的,那么默認就是32位的 Windows 7 系統在控制面板,點擊系統,在系統類型里,標注有操作系統位數 (二)安裝VPN客戶端 VPN客戶端分為32位系統和64位系統二…

    Linux干貨 2016-05-29
  • Linux 第三天: (07月26日) Linux使用幫助

    Linux 第三天: (07月26日) Linux使用幫助         whatis 顯示命令的簡短描述makewhatis centos6 制作數據庫mandb centos7 制作數據庫 help COMMAND 內部命令man bash 內部命令COMMAND –help -h 外部命令man C…

    Linux干貨 2016-08-08
  • 第二周部分練習

    (1)用戶管理: 1.創建用戶gentoo,附加組為bin和root,默認shell為/bin/csh,注釋信息為”Gentoo Distribution” 使用id命令查看用戶信息 使用cat命令查看配置文件/etc/passwd 2.創建下面的用戶、組和組成員關系 名字為admins的組 用戶natasha,使用admins作為附…

    2017-07-23
  • 8月2日作業

    1、在/testdir/data里創建的新文件自動屬于g1組,組g2的成員如:alice能對這些新文件有讀寫權限,組g3的成員如:tom只能對新文件有讀權限,其它用戶(不屬于g1,g2,g3)不能訪問這個文件夾。 答: ~]# groupadd g1 ~]# groupadd g2 ~]# groupadd g3 ~]# useradd -G g2 alic…

    Linux干貨 2016-08-04
  • linux高級文件管理系統

    磁盤配額:    linux是一個多用戶的系統,磁盤配額是分配給每個用戶的磁盤可用空間的限制。每一用戶只能使用最大配額范圍內的磁盤空間。root是不受配額限制的,只有普通用戶才受限制。   Quota是在RedHatlinux下實現linux磁盤配額的工具,它支持單獨的掛載文件系統,而不是一個目錄。quota默認是安裝的,如果沒…

    Linux干貨 2016-09-02

評論列表(1條)

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

    內容比較簡單,能再擴充下會更好~加油~

欧美性久久久久