file — 確定檔案型別
file filename
列印出檔案內容的簡單描述
less(less is more) — 瀏覽檔案內容(色即是空)
less filename
瀏覽文字檔案的乙個程式
linux常見系統目錄
符號鏈結
建立符號鏈結便於系統的更新
? (匹配任意乙個字元(不包括零個) )
[characters] (匹配任意乙個屬於字符集中的字元 )
[!characters] (匹配任意乙個不是字符集中的字元)
[[:class:]] (匹配任意乙個屬於指定字元類中的字元)
mkdir - 建立目錄
mkdir dir1 dir2 dir3
cp - 複製檔案和目錄
cp item1 item2
(複製單個檔案或目錄」item1」到檔案或目錄」item2」)
cp item... directory
(複製多個專案(檔案或目錄)到乙個目錄下)
mv - 移動和重新命名檔案
mv item1 item2
:把檔案或目錄 「item1」 移動或重新命名為 「item2」
mv item... directory
:把乙個或多個條目從乙個目錄移動到另乙個目錄中。
rm - 刪除檔案和目錄
rm item...
:「item」代表乙個或多個檔案或目錄。
ln - 建立鏈結
ln file link
:建立硬鏈結
ln -s item link
:建立符號鏈結
識別命令
得到命令文件
alias - 建立你自己的命令
或ls -l /bin/usr &> ls-output.txt
pipelines(管道線):操作符「|」,乙個命令的 標準輸出可以管道到另乙個命令的標準輸入
command1 | command2
filters(過濾器):把幾個命令放在一起組成乙個管道線
tee - 從 stdin 讀取資料,並同時輸出到 stdout 和檔案
ls /usr/bin | tee ls.txt | grep zip
(字元)展開
在標準輸出中列印出它的文字引數
echo this is a test
echo *
路徑名展開
這種萬用字元工作機制叫做路徑名展開。
echo d*
echo *s
echo .*
可以展開隱藏檔案
波浪線展開
當波浪線字元(「~」)後接乙個單詞時,展開成指定使用者的家目錄,如果沒有指定使用者名稱,則是當前使用者的家目錄
echo ~cyc
echo ~
算術表示式展開
格式為$((expression))
例
echo $((2 + 2))
** 為 取冪
花括號展開
可以從乙個包含花括號的模式中 建立多個文字字串
例:[me@linuxbox ~]$ echo front--back
front-a-back front-b-back front-c-back
echo number_
echo
也可以巢狀
echo a,b}b
輸出的結果為aa1b aa2b ab3b ab4b
引數展開
例:echo $user
命令替換
把乙個命令的輸出作為乙個展開模式來使用
例:echo $(ls)
引用
雙引號把文字放在雙引號中, shell 使用的特殊字元,除了 $,\ (反斜槓),和 `(倒引號)之外, 則失去它們的特殊含義,被當作普通字元來看待。這意味著單詞分割,路徑名展開, 波浪線展開,和花括號展開都被禁止,然而引數展開,算術展開,和命令替換 仍然執行。
例:echo "this is a test"
執行結果是:this is a test
單引號禁止所有的展開
例:echo 'text ~/*.txt $(echo foo) $((2+2)) $user'
結果為:text ~/*.txt $(echo foo) $((2+2)) $user
轉義字元
字元前加個反斜槓\
查詢檔案 TLCL
locate 執行快速的路徑名資料庫搜尋,輸出每個與指定子字串相匹配的路徑名。locate bin zip locate 命令的資料庫是updatedb命令建立的。locate只能依據檔名查詢檔案,而find命令能基於各種各樣的屬性 搜尋乙個給定目錄 以及它的子目錄 來查詢檔案.find find ...
鍵盤高階操作技巧 TLCL
ctrl a 移動游標到行首。ctrl e 移動游標到行尾。ctrl f 游標前移乙個字元 和右箭頭作用一樣。ctrl b 游標後移乙個字元 和左箭頭作用一樣。alt f 游標前移乙個字。terminal edit keyboard shortcuts 取消enable menu access ke...
從 hell眼中看世界 TLCL
字元展開 echo 路徑名展開 echo d 隱藏檔案路徑名展開 ls d 波浪線展開 echo 算術表示式展開 expression 花括號展開 echo number 最常見的應用,建立一系列的檔案或目錄列表。引數展開 echo user printenv less 命令展開 把乙個命令的輸出作...