中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

shell 特殊變量

發布時間:2020-08-02 17:13:07 來源:網絡 閱讀:402 作者:baishuchao 欄目:開發技術
  1. 位置變量

$0  獲取當前執行的shell腳本的文件名,如果執行腳本帶路徑那么就包括腳本路徑

[root@XCN shell]# sh n.sh 
n.sh

[root@XCN ~]# sh /shell/n.sh 
/shell/n.sh

[root@XCN shell]# sh `pwd`/n.sh
/shell/n.sh

shell 特殊變量

$n  獲取當前執行的shell腳本的第n個參數值,n=1..9,當n為0時表示腳本的文件名,如果n大于0,大括號括起來${10}

腳本內容:
#!/bin/bash
echo $1

[root@XCN shell]# sh p.sh xcn     #1個參數
xcn                                                                                                                  
 
[root@XCN shell]# sh p.sh xcn cainiao    #2個參數輸出的是第一個參數
xcn

$*   獲取當前shell的所有參數,將所有的命令行參數視為單個字符串,相當于"$1$2$3".....注意與$#的區域


$#   獲取當前執行的shell腳本后面接的參數的總個數

[root@XCN shell]# cat p.sh 
echo $1
echo $#
[root@XCN shell]# sh p.sh {a..z}
a
26

企業應用:(控制用戶參數輸入的個數)當輸入參數不等于2成立輸出“muse two”,側不成立會輸出"buchengli"
[root@XCN shell]# cat 1p.sh 
#!/bin/bash
[ $# -ne 2 ] && {
echo "muse two"
exit 1           #值1是退出后$? 的值
}
echo "buchengli"
[root@XCN shell]# sh 1p.sh bai
muse two
[root@XCN shell]# sh 1p.sh bai shu
buchengli
[root@XCN shell]#

$@  這個程序的所有參數"$1" "$2" "$3" "...",這是將參數傳遞給其他程序的最佳方式,因為他會保留內嵌在每個參數里的任何空白。


$*和$@的區別例子

  • $*   將所有的命令行所有參數視為單個字符串,等同于"$1$2$3","$*"

  • $@  將命令行每個參數視為單獨的字符串,等同于"$1" "$2" "$3".這是將參數傳遞給其他程序的最近方式,因為他會保留所有內嵌在每個參數里的任何空白。

注意:上述區別僅在于加雙引號的時候,即"$*"與"$@"

shift  移動位置變量


2.進程狀態變量

$$    獲取當前shell的進程號

$!     執行上一個指令的PID

$?     獲取執行上一個指令的返回值(0為成功,非零為失敗)#這個變量很常用

$_      在此之前執行的命令或腳本的最后一個參數


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临沂市| 吉首市| 松江区| 句容市| 南靖县| 九龙坡区| 乐东| 陆河县| 靖江市| 临城县| 长武县| 恩平市| 肇东市| 陆良县| 林甸县| 隆子县| 青岛市| 微博| 怀集县| 桃园市| 肇州县| 白水县| 含山县| 沅陵县| 新晃| 鞍山市| 阿拉善左旗| 江西省| 靖江市| 鹤壁市| 株洲县| 秦皇岛市| 松潘县| 赤城县| 乐清市| 平度市| 五原县| 繁峙县| 广汉市| 昌乐县| 肇州县|