前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點選跳轉到教程。
Linux declare指令用于聲明 shell 變量。
declare為shell指令,在第一種文法中可用來聲明變量并設定變量的屬性([rix]即為變量的屬性),在第二種文法中可用來顯示shell函數。若不加上任何參數,則會顯示全部的shell變量與函數(與執行set指令的效果相同)。
文法
declare [+/-][rxi][變量名稱=設定值] 或 declare -f [+/-][rxi][變量名稱=設定值] 或 declare -f
參數說明:
- +/- "-"可用來指定變量的屬性,"+"則是取消變量所設的屬性。
- -f 僅顯示函數。
- r 将變量設定為隻讀。
- x 指定的變量會成為環境變量,可供shell以外的程式來使用。
- i [設定值]可以是數值,字元串或運算式。
執行個體
聲明整數型變量
# declare -i ab //聲明整數型變量
# ab=56 //改變變量内容
# echo $ab //顯示變量内容
56
# ab=56 //改變變量内容
# echo $ab //顯示變量内容
56
改變變量屬性
# declare -i ef //聲明整數型變量
# ef=1 //變量指派(整數值)
# echo $ef //顯示變量内容
1
# ef="wer" //變量指派(文本值)
# echo $ef
0
# declare +i ef //取消變量屬性
# ef="wer"
# echo $ef
wer
# ef=1 //變量指派(整數值)
# echo $ef //顯示變量内容
1
# ef="wer" //變量指派(文本值)
# echo $ef
0
# declare +i ef //取消變量屬性
# ef="wer"
# echo $ef
wer
設定變量隻讀
# declare -r ab //設定變量為隻讀
# ab=88 //改變變量内容
-bash: ab: 隻讀變量
# echo $ab //顯示變量内容
56
# ab=88 //改變變量内容
-bash: ab: 隻讀變量
# echo $ab //顯示變量内容
56
聲明數組變量
# declare -a cd='([0]="a" [1]="b" [2]="c")' //聲明數組變量
# echo ${cd[1]}
b //顯示變量内容
# echo ${cd[@]} //顯示整個數組變量内容
a b c
# echo ${cd[1]}
b //顯示變量内容
# echo ${cd[@]} //顯示整個數組變量内容
a b c
顯示函數
# declare -f
command_not_found_handle ()
{
if [ -x /usr/lib/command-not-found ]; then
/usr/bin/python /usr/lib/command-not-found -- $1;
return $?;
else
if [ -x /usr/share/command-not-found ]; then
/usr/bin/python /usr/share/command-not-found -- $1;
return $?;
else
return 127;
fi;
fi
}
command_not_found_handle ()
{
if [ -x /usr/lib/command-not-found ]; then
/usr/bin/python /usr/lib/command-not-found -- $1;
return $?;
else
if [ -x /usr/share/command-not-found ]; then
/usr/bin/python /usr/share/command-not-found -- $1;
return $?;
else
return 127;
fi;
fi
}
----------------------------------- 我 是 分 隔 線 ----------------------------------------
tail 指令可用于檢視檔案的内容,有一個常用的參數 -f 常用于查閱正在改變的日志檔案。
tail -f filename 會把 filename 檔案裡的最尾部的内容顯示在螢幕上,并且不但重新整理,隻要 filename 更新就可以看到最新的檔案内容。
指令格式:
tail [參數] [檔案] [參數] [檔案]
參數:
- -f 循環讀取
- -q 不顯示處理資訊
- -v 顯示詳細的處理資訊
- -c<數目> 顯示的位元組數
- -n<行數> 顯示行數
- --pid=PID 與-f合用,表示在程序ID,PID死掉之後結束.
- -q, --quiet, --silent 從不輸出給出檔案名的首部
- -s, --sleep-interval=S 與-f合用,表示在每次反複的間隔休眠S秒
執行個體
要顯示 notes.log 檔案的最後 10 行,請輸入以下指令:
tail notes.log .log
要跟蹤名為 notes.log 的檔案的增長情況,請輸入以下指令:
tail -f notes.log -f notes.log
此指令顯示 notes.log 檔案的最後 10 行。當将某些行添加至 notes.log 檔案時,tail 指令會繼續顯示這些行。 顯示一直繼續,直到您按下(Ctrl-C)組合鍵停止顯示。
顯示檔案 notes.log 的内容,從第 20 行至檔案末尾:
tail +20 notes.log +20 notes.log
顯示檔案 notes.log 的最後 10 個字元:
tail -c 10 notes.log -c 10 notes.log