国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Linux Shell > 正文

對shell中常見參數及判斷命令介紹

2020-07-27 18:46:56
字體:
來源:轉載
供稿:網友

Shell常用特殊變量

經常會在shell命令中,看到$0, $#, $*, $@, $?, $$這樣的取值,這些代表什么呢?

變量 含義
$0 當前腳本的文件名
$n 傳遞給腳本或函數的參數。n 是一個數字,表示第幾個參數。例如,第一個參數是$1,第二個參數是$2
$# 傳遞給腳本或函數的參數個數
$* 傳遞給腳本或函數的所有參數
$@ 傳遞給腳本或函數的所有參數。被雙引號(” “)包含時,與 $* 稍有不同
$? 上個命令的退出狀態,或函數的返回值。成功返回0,失敗返回1
$$ 當前Shell進程ID。對于 Shell 腳本,就是這些腳本所在的進程ID

$* 和 $@ 都是將參數一個一個返回

"$*"將所有參數當做一個整體字符串返回 , "$@"將參數一個一個返回

常用判斷參數

在shell命令文件中還經常會看到類似與if [ -z "${SPARK_HOME}" ]; then這樣的判斷語句?是不是也和我一樣很疑惑-z是什么含義?

下面是幾個常見的參數,供查詢使用:

-a file exists. -b file exists and is a block special file. -c file exists and is a character special file. -d file exists and is a directory. -e file exists (just the same as -a). -f file exists and is a regular file. -g file exists and has its setgid(2) bit set. -G file exists and has the same group ID as this process. -k file exists and has its sticky bit set. -L file exists and is a symbolic link. -n string length is not zero. -o Named option is set on. -O file exists and is owned by the user ID of this process. -p file exists and is a first in, first out (FIFO) special file or named pipe. -r file exists and is readable by the current process. -s file exists and has a size greater than zero. -S file exists and is a socket. -t file descriptor number fildes is open and associated with a terminal device. -u file exists and has its setuid(2) bit set. -w file exists and is writable by the current process. -x file exists and is executable by the current process. -z string length is zero. 

判斷命令

shell中除了有上邊這樣用來判斷文件是否存在的參數,當然還有判斷兩個數是否相等這樣更常規的命令

例如,if [ $# -gt 0 ]這樣判斷傳入參數個數是否為0

命令 含義
-eq 等于
-ne 不等于
-gt 大于
-lt 小于
ge 大于等于
le 小于等于

以上這篇對shell中常見參數及判斷命令介紹就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 雷州市| 宁城县| 平遥县| 郓城县| 谷城县| 花莲县| 博乐市| 寻甸| 永新县| 虎林市| 雷波县| 杨浦区| 通城县| 思南县| 彝良县| 丁青县| 会宁县| 任丘市| 原阳县| 青龙| 阳西县| 如东县| 曲沃县| 昂仁县| 江源县| 天等县| 哈尔滨市| 手游| 朝阳市| 邵阳市| 咸丰县| 疏勒县| 永寿县| 龙南县| 华坪县| 池州市| 米脂县| 宜黄县| 平塘县| 新乐市| 缙云县|