1、lshtml
-a 所有的文件,連同隱藏的文件(開頭爲.的文件)bash
-d 僅列出目錄自己,而不是列出目錄內的文件數據數據結構
-l 長數據串列出,包含文件的屬性和權限等數據socket
-F 根據文件、目錄等資訊,給予附加數據結構,例如:*:表明可運行檔;/:表明目錄;=:表明socket文件;|:表明FIFO文件ui
-h 將文件容量以用戶較易讀的方式列出,例如GB、KB等命令行
-S 以文件大小順序列出(默認以檔名排序)htm
-t 以時間順序列出(默認以檔名排序)blog
-r 將排序結果以反向輸出排序
-R 連同子目錄內容一併列出遞歸
--full-time 以完整時間模式(包含年、月、日、時、分)輸出
--time={atime,ctime} 輸出access時間或改變權限屬性的時間。而非內容變動時間(mtime,modification time)
--color=auto 讓系統自動根據配置來判斷是否給予顏色
2、cp
cp若是沒有加任何屬性,複製的就是原始文件,而非源文件的屬性(注意和-d的區別)
-a 想當於-pdr
-p 連同文件的屬性一併複製過去,而非使用默認屬性(備份經常使用)
-d 若來源檔位鏈接檔的屬性(link file),則複製鏈接檔屬性而非文件自己
-r 遞歸連續複製,用於目錄的複製
-i 互動模式,若目標檔destination已經存在,在覆蓋的時候詢問動做的進行
-f 強制,若目標文件已經存在且沒法開啓,則移除後再嘗試
-l 進行硬式鏈接(hard link)的鏈接檔建立,而非複製文件自己
-s 複製成爲符號鏈接檔(symbolic link),亦稱快捷方式
-u 若destination比source舊才升級destination,經常使用於備份。由於只有在目標文件和源文件由差別時纔會複製。
注意:
①不一樣身份運行cpui有不一樣的結果產生,尤爲是-a
②-l和-s創建鏈接檔的區別:-l是實體鏈接,-s是符號鏈接。例如
bashrc_slink是一個捷徑,該捷徑鏈接到bashrc去,因此你能夠看到該檔名右側有一個->的符號(ls -l)
bashrc_hlink是與 bashrc的屬性和權限徹底同樣,與還沒有進行鏈接以前的差別是第二欄的link數由1變成2
3、rm
-f 忽略不存在的文件,不會出現警告信息
-i 互動模式,在刪除前詢問使用者是否執行
-r 遞歸刪除,用於目錄的刪除(-rf)
注意:
①假如要刪除目錄/temp/etc
rm -r /temp/etc
由於身份是root,默認已經加入-i,因此須要一直按y才能刪除成功
加入不想繼續按y,能夠按ctrl——c來結束rm的工做
這是一種保護的動做,假如肯定要刪除掉此目錄而不詢問,則能夠
\rm -r /temp/etc
在命令行前面加上\能夠忽略alias的指定選項(i、f、r)
②假如要刪除一個帶-開頭的文件
touch ./-aaa- #先建立一個空文件
rm -aaa- #首先這樣會致使系統誤判
rm ./-aaa- #正確刪除方式
4、mv
mv用於移動文件或目錄,或者改名
-f 若是目標文件已經存在,直接覆蓋,不會詢問
-i 互動模式,在覆蓋前詢問使用者是否執行
-u 若目標文件已經存在,且source比較新,纔會升級update
mv bashrc mvtest將文件bashrc移動到mvtest文檔
mv mvtest mvtest2修改目錄mvtest的名稱(改名操做)
mv bashrc1 bashrc2 mvtest2若是有多個來源和目錄,則最後一個參數必定是目錄
注意:
其實對於改名,還有一個命令rename
rename專門進行多個檔名的同時改名,並不是針對單一檔名
5、cat
-n 列印出行號,連同空白行也會有行號,與-b的選項不一樣
-b 列出行號,僅針對非空白行作行號顯示,空白行不標行號
-A 至關於-vET
-v 列出一些看不出來的特殊字符
-E 將結尾的斷行字符$顯示出來
-T 將[tab]按鍵以^|顯示出來
例如:
cat /etc/issue正常顯示
cat -n /etc/issue加印行號
cat -b /etc/issue不想加印空白行號
6、touch
-a 僅修改access time訪問時間
-c 僅修改文件ctime當前時間,若該文件不存在則建立新文件
-m 僅修改mtime建立時間
-t 後面能夠接欲修訂的時間而不用目前的時間,格式爲[YYMMDDhhmm]
-d 後面能夠接欲修訂的日期而不用目前的時間
注意:
經常使用來新建一個空的文件並觀察時間
在默認狀態下,若是touch後面接了文件名,則該文件的三個時間(atime、ctime、mtime)都會升級爲當前時間
若該文件不存在,則會主動建立一個新的空的文件
例如,對於某個文件,
(1)可使用命令:ll file; ll --time=atime file;ll --time=ctime file
查看文件的mtime、atime、ctime
(2)touch -d "2 days ago" file將日期修改成兩天前
此時再用(1)的命令查看發現,atime和mtime變成了兩天前,而ctime沒有改變
(3)touch -t 0709150202 file將日期修改成2007/09/15 2.02
此時再用(1)的命令查看發現,atime和mtime改變了,而ctime則是記錄目前的時間
經常使用的幾個命令如上,下面咱們將瞭解一下命令與文件的搜尋which、whereis、locate、find的區別