$ vim showname.sh
#!/bin/bash
# program:
# user inputs his first name and last name. program shows his full name.
# history:
# 2015/07/16 vbird first release
path=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export path
read -p "please input your first name: " firstname # 提示使用者輸入
read -p "please input your last name: " lastname # 提示使用者輸入
echo -e "\nyour full name is: $ $" # 結果由螢幕輸出
exit 0
$ sh showname.sh #開始執行指令碼
以『#!/bin/bash 』來宣告這個檔案內的語法使用bash 的語法;
第二行#為注釋,用於描述該檔案的簡介和歷史變更記錄;
需要匯入環境變數;
[exit 0]定義回傳值給系統,也可以用其他非零的值定義錯誤碼。
整數運算舉例:
var=$((運算內容))
total=$(($*$))
小數運算舉例:
使用bc指令
$ echo "123.123*55.9" | bc
bash子程式中執行示例(sh):
$sh showname.sh
bash父程式中執行示例(source):
$source showname.sh
檢測系統上面某些檔案或者是相關的屬性(test):
$ test -e /aabb && echo "exist" || echo "not exist"
not exist
判斷符號([ ]):
舉例來說,如果我想要知道 $ 這個變數是否為空
$ [ -z "$" ] ; echo $?
$ [ 「$」 == "vbird" ]
要注意中括號的兩端需要有空格符來分隔
第二行要注意左邊變數需要用雙引號括起來
帶引數的命令,指令碼內獲取引數值,舉例:
$ vim how_paras.sh
#!/bin/bash
# program:
# program shows the script name, parameters...
# history:
# 2015/07/16 vbird first release
path=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export path
echo "the script name is ==> $"
echo "total parameter number is ==> $#"
[ "$#" -lt 2 ] && echo "the number of parameter is less than 2. stop here." && exit 0
echo "your whole parameter is ==> '$@'"
echo "the 1st parameter ==> $"
echo "the 2nd parameter ==> $"
$ sh how_paras.sh theone haha quot
the script name is ==> how_paras.sh <==檔名
total parameter number is ==> 3 <==果然有三個引數
your whole parameter is ==> 'theone haha quot' <==引數的內容全部
the 1st parameter ==> theone <==第乙個引數
the 2nd parameter ==> haha <==第二個引數
學習筆記 Linux學習
echo i am whoami 反引號裡的內容會被當做命令執行 echo the cpu in my pc has cat proc cpuinfo grep c processor cores 等價於反引號 a 10 定義乙個變數,等號兩邊不能有空格 echo a的值為 a a的值為10 ech...
linux學習筆記
開機流程簡介 1 載入 bios 的硬體資訊,並取得第乙個開機裝置的代號 2 讀取第乙個開機裝置的 mbr 的 boot loader 亦即是 lilo,grub,spfdisk 等等 的開機資訊 3 載入 kernel 作業系統核心資訊,kernel 開始解壓縮,並且嘗試驅動所有硬體裝置 4 ke...
Linux 學習筆記
配置 telnet 服務 vi etc hosts.deny 在all all 行前加 號注釋,登出該行。新增一行all all 用 登出disable yes,或者修改為 disble no vi etc pam.d login 在auth required lib security pam se...