將變數定義為唯讀,其值不能被改變,無法用unset刪除
單引號裡的任何字元都會原樣輸出,單引號字串中的變數是無效的,單引號字串中不能出現單獨乙個單引號(對列印好使用轉義字元後也不行),但可以成對出現,作為字串拼接使用。
雙引號裡可以有變數,雙引號裡可以出現轉義字元
$n n代表乙個數字,其中0為執行的檔名,1為第乙個引數,
其他處理引數:
$# 傳遞到指令碼的引數個數
$* 以乙個單字串顯示所以向指令碼傳遞的引數,如"$*"用引號括起來的情況,以"$1 $2...$n"的形式輸出所有引數。
$$ 指令碼執行的當前程序id號
$! 後台執行的最後乙個程序id號
$@ 與$*相同,但是使用時加引號,並在引號中返回每個引數。如
"$@"用"括起來的情況,以"$1""$2" ... "$n"的形式輸出所有引數
$-顯示shell使用的當前選項,與set命令功能相同
$? 顯示最後命令的退出狀態。0表示沒有錯誤,其他任何值表明有錯誤
關係運算子只支援數字,不支援字串,除非字串的值為數字
-eq 檢測兩個數是否相等,相等返回true
-ne 檢測兩個數是偶不相等,不相等返回true
-gt 檢測左邊的數是否大於右邊的,如果是返回true
-lt 檢測左邊的數是否小於右邊的,如果是,返回true
-ge 檢測左邊的數是否大於等於右邊的,如果是,返回true
-le 檢測左邊的數是否小於等於右邊的,如果是,返回true
! 非運算,表示式為true返回false
-o 或運算子,有乙個表示式為true返回true
-a 與運算,兩個表示式都為true才返回true
&& 邏輯與
|| 邏輯或
= 檢測兩個字串是否相等,相等返回true
!= 檢測兩個字串是否相等,相等返回false
-z 檢測兩個字串長度是否為0,不為0返回true
-n 檢測字串長度是否為0,不為零返回true
$ 檢測字串是否為空,不為空返回true
-b file 檢測檔案是否為塊裝置檔案
-c file 檢測檔案是否為字元裝置檔案
-d file 檢測檔案是否為目錄
-f file 檢測檔案是否為普通檔案
-g file 檢測檔案是否設定了sgid位
-k file 檢測檔案是否設定了粘著位(sticky bit)
-p file 檢測檔案是否是有名管道
-u file 檢測檔案是否設定了suid位
-r file 檢測檔案是否可讀
-w file 檢測檔案是否可寫
-x file 檢測檔案是否可執行
-s file 檢測檔案是否為空,不為空返回true
-e file 檢測檔案(目錄)是都存在
-s file 判斷某檔案是否socket
-l 檢測檔案是否存在並且是乙個符號鏈結
read命令乙個乙個片語地接收輸入的引數,每個片語需要使用空格進行分隔,如果輸入的片語個數大於需要的引數個數,則多出的片語將被作為整體為最後乙個引數接收
read -p "請輸入:" -n 6 -t 5 -s password
引數說明:
-p 輸入提示文字
-n 輸入字元長度限制
-t 輸入限時
-s 隱藏輸入內容
command > file 將輸出重定向到file
command > file 將輸入重定向到file
command >> file 將輸出以追加方式重定向到file
n > file 將檔案描述符為n的檔案重定向到file
n >> file 將檔案描述符為n的檔案以追加的方式重定向到file
n >& m 將輸出檔案m和n 合併
n <& m 將輸入檔案m和n 合併
<< tag 將開始標記tag和標記結束tag之間的內容作為輸入
檔案描述符0通常是標準輸入,1是標準輸出,2是標準錯誤輸出
如果希望執行某個命令,但又不希望在螢幕上顯示輸出結果,那麼可以將輸出重定向到/dev/null
如果希望遮蔽stdout和stderr可以:
command > /dev/null 2>&1
使用 .檔名 linux shell命令小結
主要是從鳥哥的linux私房菜裡面總結的一些命令,由於自己不常用shell環境 還是沒有脫離window環境 所以用的時候只是一些再常見不過的命令。打算做個總結,邊學邊記,這樣也能鞏固所學,並且敦促自己不斷使用shell環境吧!1 cd dir 轉到某個目錄下。2 mkdir newdir 新建目錄...
linux shell常用命令小結
ls命令 f 加這個引數,如果是目錄後面會加 可以用來區分是檔案還是目錄。a 可以用來顯示所有檔案,包含隱藏檔案。r 遞迴選項,會把目錄下的所有子目錄都列出來。l 列出檔案的詳細資訊。d 列出目錄本身的資訊,不列出其中的內容。i 檢視檔案inode值,確認是否同一檔案。元字萬用字元 匹配任意個字元 ...
linux shell 指令學習小結(一)
有必要總結一發shell指令了。不過我覺得網上的詳細教程還比較多,先知道每個指令幹啥,具體很詳細的引數可以在用的時候去查,用多了就熟了 覺得還不錯的教程傳送門 每天乙個linux命令目錄 裡面每個指令介紹的還算詳細,有什麼忘記的其實可以查這個 ps 分為三篇文章更 一 1.ls 命令 2.cd 命令...