通過代碼解釋linux shell命令中的參數和if語句的聲明和書寫槼範

字號+ 編輯: 种花家 修訂: 种花家 來源: 网络转载 2023-09-07 我要說兩句(0)

360前技術總監曾哥解釋linux系統中shell命令裡的參數,if語句如何使用

請詳細閲讀代碼當中的解釋

#!/bin/bash
# shell參數和if語句
# shell的參數獲取 $0 默認是文档名 ,接下來的是$number 是獲第number個取參數
# 執行方法:sh t.sh t1 t2 t3
echo "執行的文档是$0"
echo "第一個參數:$1"
echo "第二個參數:$2"
echo "第三個參數:$3"
# $$ ###當前shell的id
# $n ###傳遞給腳本或函數的參數。n 是一個數字,表示第幾個參數。例如,第一個參數是$1,第二個參數是$2。
# $# ###傳遞給腳本或函數的參數個數。
# $* ###傳遞給腳本或函數的所有參數。
# $@ ###傳遞給腳本或函數的所有參數。被雙引號(" ")包含時,與 $* 稍有不同
# $? ###上個命令的退出狀態,或函數的返回值。
# $* 和 $@ 的區別:$* 和 $@ 都表示傳遞給函數或腳本的所有參數,不被雙引號(" ")包含時,都以"$1" "$2" … "$n" 的形式輸出所有參數。但是當它們被雙引號(" ")包含時,"$*" 會將所有的參數作爲一個整體,以"$1 $2 … $n"的形式輸出所有參數;"$@" 會將各個參數分開,以"$1" "$2" … "$n" 的形式輸出所有參數。
echo "當前的shell的進程的id是$$"
echo "當前腳本的參數個數是$#"
echo "所有的參數一起顯示是$*"
echo "所有的參數單獨顯示是$@"
echo "上一個命令退出的返回值$?"
# shell的算術運算符
a=100
b=200
# 下面是加,減,成,除,取餘
val=`expr $a + $b`
echo "a + b : $val"
val=`expr $a - $b`
echo "a - b : $val"
val=`expr $a \* $b`
echo "a * b : $val"
val=`expr $a / $b`
echo "a / b : $val"
val=`expr $a % $b`
echo "a % b : $val"
# if 語句都得用空格隔開,參數也是一樣
if [ $a == $b ]
then
echo "$a等於$b"
fi
if [ $a != $b ]
then
echo "a不等於b"
fi
# 關係運算符:關係運算符只支持數字,不支持字符串,除非字符串的值是數字。
# -eq 檢測兩個數是否相等,相等返回 true。 [ $a -eq $b ] 返回 true。
# -ne 檢測兩個數是否相等,不相等返回 true。 [ $a -ne $b ] 返回 true。
# -gt 檢測左邊的數是否大於右邊的,如果是,則返回 true。 [ $a -gt $b ] 返回 false。
# -lt 檢測左邊的數是否小於右邊的,如果是,則返回 true。 [ $a -lt $b ] 返回 true。
# -ge 檢測左邊的數是否大等於右邊的,如果是,則返回 true。 [ $a -ge $b ] 返回 false。
# -le 檢測左邊的數是否小於等於右邊的,如果是,則返回 true。 [ $a -le $b ] 返回 true。
if [ $a -eq $b ]
then
echo "$a -eq $b : a 等於 b "
else
echo "$a -eq $b : a 不等於b "
fi
if [ $a -ne $b ]
then
echo "$a -ne $b : a 不等於 b "
else
echo "$a -ne $b : a 等於b "
fi
if [ $a -gt $b ]
then
echo "$a -gt $b : a 大於 b "
else
echo "$a -gt $b : a 不大於b "
fi
if [ $a -lt $b ]
then
echo "$a -lt $b : a 小於 b "
else
echo "$a -lt $b : a 不小於b "
fi
if [ $a -ge $b ]
then
echo "$a -ge $b : a 大等於 b "
else
echo "$a -ge $b : a 不大等於b "
fi
if [ $a -le $b ]
then
echo "$a -le $b : a 小於等於 b "
else
echo "$a -le $b : a 不小於等於b "
fi


閲完此文,您的感想如何?
  • 有用

    0

  • 沒用

    0

  • 開心

    0

  • 憤怒

    0

  • 可憐

    0

1.如文章侵犯了您的版權,請發郵件通知本站,該文章將在24小時内刪除;
2.本站標注原創的文章,轉發時煩請注明來源;
3.交流群: 2702237 13835667

相關課文
  • 防止退出linux終耑退出之後導致的nohup進程強制退出

  • Linux系統下word文档轉成pdf的辦法

  • ubuntu和debian安裝nginx或者tengine報錯, 找不到pcre依賴庫的解決辦法

  • linux終耑下借助awk命令查詢篩出網站access.log日志裡的統計信息

我要說說
網上賓友點評