1. ls
顯示目錄文件夾及文件
使用方式: ls -lt
-a 顯示目錄下所有文件及文件夾包括 . 與 ..
-A 顯示目錄下所有文件及文件夾不包括 . 與 ..
-l 顯示目錄下所有文件及文件夾詳細信息
-t 按修改時間排序(倒序)
-F 如目錄後加/ 如可執行文件後加*
-r 按文件名字母排序(倒序)
-R 顯示目錄下所有文件夾及文件(包括子文件夾)
將文件內容串連後輸出
使用方式: cat file1 file2 filen
-n 對所有輸出的行數加序號
-b 對所有輸出的非空白行數加序號
-s 如連續兩行或以上的空行,替代爲一行空行
更新文件夾或文件權限
使用方式: chmod a+x *.*
ugoa +-= rwx
-c 如修改後的權限與之前不同,顯示修改訊息
-v 顯示修改訊息
-f 隱藏錯誤
-R 遍歷設置權限(子文件夾)
更新文件夾擁有者與組
使用方式: chown -R root:root *
-R 遍歷設置(子文件夾)
5. cp
本地複製文件夾與文件
使用方式: cp -a source dest
-a 保留源文件的權限等訊息
-r 遍歷複製(子文件夾)
-f 當目標文件與原文件重名,先刪除目標文件,再複製
顯示文件內容N-M列的內容
使用方式: cut -c1-6 file
-c 顯示每行從頭開始的num1到num2的文字
7. rm
刪除文件
使用方式: rm -rf file or folder
-i 刪除前逐一詢問確認
-f 即使文件只讀都強制刪除,不需要確認
-f 遍歷刪除(子文件夾)
刪除文件夾
使用方式: rmdir folder
-p 如果刪除子文件夾後是空文件夾,則一併刪除。注意:會一直刪除父級目錄,直到父級目錄不爲空。
解密
使用方式: unzip -P 123456 -d path o.zip
-P <密碼> zip 壓縮包的密碼
-f 覆蓋原有文件
-d <路徑> 指定解壓路徑
-n 解壓縮時不覆蓋原有文件
-o 不經詢問,直接覆蓋原有文件
-u 覆蓋原有文件,並將壓縮文件中的其他文件解壓縮到目錄中
-l 顯示壓縮文件內所包含的文件 -t 檢查壓縮文件是否正確
-Z unzip -Z 等於執行 zipinfo 指令 -j 不處理壓縮文件中原有的目錄路徑
-C 壓縮文件中的文件名稱區分大小寫
-z 顯示壓縮包註釋
-L 將壓縮文件中的全部文件名改爲小寫
-s 將文件名中的空格轉換下劃線 -X 解壓縮時保留文件原來的 UID/GID
-q 執行時不顯示任何信息 -v 執行是時顯示詳細的信息
-c 將解壓縮的結果顯示到屏幕上,並對字符做適當的轉換
-p 與-c 參數類似,會將解壓縮的結果顯示到屏幕上,但不會執行任何的轉換
-a 對文本文件進行必要的字符轉換
-b 不要對文本文件進行字符轉換
-x <表達式> 處理裏排除壓縮包中的指定文件
-M 將輸出結果送到 more 程序處理
10. zip
加密
使用方式: zip -q -r d.zip folder/file
-A 調整可執行的自動解壓縮文件。
-b <工作目錄> 指定暫時存放文件的目錄。
-c 替每個被壓縮的文件加上註釋。
-d 從壓縮文件內刪除指定的文件。
-D 壓縮文件內不建立目錄名稱。
-f 此參數的效果和指定"-u"參數類似,但不僅更新既有文件,如果某些文件原本不存在於壓縮文件內,使用本參數會一併將其加入壓縮文件中。
-F 嘗試修復已損壞的壓縮文件。
-g 將文件壓縮後附加在既有的壓縮文件之後,而非另行建立新的壓縮文件。
-h 在線幫助。
-i <範本樣式> 只壓縮符合條件的文件。
-j 只保存文件名稱及其內容,而不存放任何目錄名稱。
-J 刪除壓縮文件前面不必要的數據。
-k 使用MS-DOS兼容格式的文件名稱。
-l 壓縮文件時,把LF字符置換成LF+CR字符。
-ll 壓縮文件時,把LF+CR字符置換成LF字符。
-L 顯示版權信息。
-m 將文件壓縮並加入壓縮文件後,刪除原始文件,即把文件移到壓縮文件中。
-n <字尾字符串> 不壓縮具有特定字尾字符串的文件。
-o 以壓縮文件內擁有最新更改時間的文件爲準,將壓縮文件的更改時間設成和該文件相同。
-q 不顯示指令執行過程。
-r 遞歸處理,將指定目錄下的所有文件和子目錄一併處理。
-S 包含系統和隱藏文件。
-t <日期時間> 把壓縮文件的日期設成指定的日期。
-T 檢查備份文件內的每個文件是否正確無誤。
-u 更換較新的文件到壓縮文件內。
-v 顯示指令執行過程或顯示版本信息。
-V 保存VMS操作系統的文件屬性。
-w 在文件名稱裏假如版本編號,本參數僅在VMS操作系統下有效。
-x <範本樣式> 壓縮時排除符合條件的文件。
-X 不保存額外的文件屬性。
-y 直接保存符號連接,而非該連接所指向的文件,本參數僅在UNIX之類的系統下有效。
-z 替壓縮文件加上註釋。
-$ 保存第一個被壓縮文件所在磁盤的卷冊名稱。
-<壓縮效率> 壓縮效率是一個介於1-9的數值。
11. find
查找文件及文件夾使用方式: find path -mtime 3 -type f -exec ls -lt {} \;
-atime N 最後訪問時間在N天前
-mtime N 最後更新時間在N天前
-name name 名稱包含
-user user 用戶名包含
-newer otherfile 比某個文件新
-type 類型 f:文件 d:目錄
! not
-a and
-o or
-print 打印文件名
-mount 不搜索其他問題系統的目錄
-maxdepth N 最多搜尋目錄的層數
-mindepth N 從N層開始搜尋
-depth 查看目錄本身之前先搜尋目錄的內容
-empty 文件或目錄爲空
-exec command {} \; 執行命令
-ok command {} \; 執行命令,每次執行需要用戶確認
匹配
使用方式: grep -c "string" file1 file2
-c 只顯示匹配的行數
-i 不區分大小寫
-l 只顯示文件名
-h 不顯示前綴文件名
-v 顯示不匹配的行數
-E 擴展模式(使用正則)
-n 顯示匹配的行在文件中的行數
-x 只打印整行匹配的行
-Ax 顯示匹配行後x行
-By 顯示匹配行前y行
-Cz 顯示匹配行前後z行
遠程複製文件夾與文件
使用方式:
scp localfile username@ip:remotefolder
scp username@ip:remotefile localfolder
scp -r localfolder username@ip:remotefolder
scp -r username@ip:remotefolder localfolder
-r 複製目錄及所有子目錄子文件(遍歷)
df 查看文件系統容量
du 查看文件夾及文件容量
使用方式:
du -h --max-depth=1 folder
df -h
-h 以可讀性較好的方式顯示尺寸(例如:1K 234M 2G)
--max-depth=N N查詢的深度
創建文件或文件夾鏈接
使用方式:
ln -s 源文件/源文件夾 目標文件
ln -s /home/fdipzone/demo link 在當前目錄創建一個文件夾鏈接link,鏈接到 /home/fdipzone/demo
說明 : Linux/Unix 檔案系統中,有所謂的連結(link),我們可以將其視爲檔案的別名,而連結又可分爲兩種 : 硬連結(hard link)與軟連結(symbolic link),硬連結的意思是一個檔案可以有多個名稱,而軟連結的方式則是產生一個特殊的檔案,該檔案的內容是指向另一個檔案的位置。硬連結是存在同一個檔 案系統中,而軟連結卻可以跨越不同的檔案系統。
ln source dist 是產生一個連結(dist)到 source,至於使用硬連結或軟鏈結則由參數決定。
不論是硬連結或軟鏈結都不會將原本的檔案複製一份,只會佔用非常少量的磁碟空間。
-f : 鏈結時先將與 dist 同檔名的檔案刪除
-d : 允許系統管理者硬鏈結自己的目錄
-i : 在刪除與 dist 同檔名的檔案時先進行詢問
-n : 在進行軟連結時,將 dist 視爲一般的檔案
-s : 進行軟鏈結(symbolic link)
-v : 在連結之前顯示其檔名
-b : 將在鏈結時會被覆寫或刪除的檔案進行備份
-S SUFFIX : 將備份的檔案都加上 SUFFIX 的字尾
-V METHOD : 指定備份的方式
--help : 顯示輔助說明
--version : 顯示版本
locate 讓使用者可以很快速的搜尋檔案系統內是否有指定的檔案。其方法是先建立一個包括系統內所有檔案名稱及路徑的資料庫,之後當尋找時就只需查詢這個資料庫,而不必實際深入檔案系統之中了。在一般的 distribution 之中,資料庫的建立都被放在 contab 中自動執行。
使用方式:
locate filename
locate [-q] [-d ] [--database=]
locate [-r ] [--regexp=]
locate [-qv] [-o ] [--output=]
locate [-e ] [-f ] <[-l ] [-c] <[-U ] [-u]>
locate [-Vh] [--version] [--help]
locate chdrv:尋找所有叫 chdrv 的檔案
locate -n 100 a.out:尋找所有叫 a.out 的檔案,但最多隻顯示 100 個
locate -u:建立資料庫
-u
-U 建立資料庫,-u 會由根目錄開始,-U 則可以指定開始的位置。
-e 將排除在尋找的範圍之外。
-l 如果 是 1.則啓動安全模式。在安全模式下,使用者不會看到權限無法看到的檔案。這會始速度減慢,因爲 locate 必須至實際的檔案系統中取得檔案的權限資料。
-f 將特定的檔案系統排除在外,例如我們沒有到理要把 proc 檔案系統中的檔案放在資料庫中。
-q 安靜模式,不會顯示任何錯誤訊息。
-n 至多顯示n個輸出。
-r 使用正規運算式 做尋找的條件。
-o 指定資料庫存的名稱。
-d 指定資料庫的路徑
-h 顯示輔助訊息
-v 顯示更多的訊息
-V 顯示程式的版本訊息
使用方式:wc [option] file1 file2
wc -l file
可以組合使用 wc -lcw file1 file2
- c 統計字節數
- l 統計行數
- w 統計字數
使用方式:wget [options] [URL]
wget -O test.zip http://www.fdipzone.com/test.zip
啓動:
-V, --version 顯示wget的版本後退出
-h, --help 打印語法幫助
-b, --background 啓動後轉入後臺執行
-e, --execute=COMMAND 執行`.wgetrc'格式的命令,wgetrc格式參見/etc/wgetrc或~/.wgetrc
wget默認會根據網站的robots.txt進行操作
使用-e robots=off參數即可繞過該限制
記錄和輸入文件:
-o, --output-file=FILE 把記錄寫到FILE文件中
-a, --append-output=FILE 把記錄追加到FILE文件中
-d, --debug 打印調試輸出
-q, --quiet 安靜模式(沒有輸出)
-v, --verbose 冗長模式(這是缺省設置)
-nv, --non-verbose 關掉冗長模式,但不是安靜模式
-i, --input-file=FILE 下載在FILE文件中出現的URLs
-F, --force-html 把輸入文件當作HTML格式文件對待
-B, --base=URL 將URL作爲在-F -i參數指定的文件中出現的相對鏈接的前綴
--sslcertfile=FILE 可選客戶端證書
--sslcertkey=KEYFILE 可選客戶端證書的KEYFILE
--egd-file=FILE 指定EGD socket的文件名
下載:
--bind-address=ADDRESS 指定本地使用地址(主機名或IP,當本地有多個IP或名字時使用)
-t, --tries=NUMBER 設定最大嘗試鏈接次數(0 表示無限制).
-O --output-document=FILE 把文檔寫到FILE文件中
-nc, --no-clobber 不要覆蓋存在的文件或使用.#前綴
-c, --continue 接着下載沒下載完的文件
--progress=TYPE 設定進程條標記
-N, --timestamping 不要重新下載文件除非比本地文件新
-S, --server-response 打印服務器的迴應
--spider 不下載任何東西
-T, --timeout=SECONDS 設定響應超時的秒數
-w, --wait=SECONDS 兩次嘗試之間間隔SECONDS秒
--waitretry=SECONDS 在重新鏈接之間等待1...SECONDS秒
--random-wait 在下載之間等待0...2*WAIT秒
-Y, --proxy=on/off 打開或關閉代理
-Q, --quota=NUMBER 設置下載的容量限制
--limit-rate=RATE 限定下載輸率
目錄:
-nd --no-directories 不創建目錄
-x, --force-directories 強制創建目錄
-nH, --no-host-directories 不創建主機目錄
-P, --directory-prefix=PREFIX 將文件保存到目錄 PREFIX/...
--cut-dirs=NUMBER 忽略 NUMBER層遠程目錄
HTTP 選項:
--http-user=USER 設定HTTP用戶名爲 USER.
--http-passwd=PASS 設定http密碼爲 PASS.
-C, --cache=on/off 允許/不允許服務器端的數據緩存 (一般情況下允許).
-E, --html-extension 將所有text/html文檔以.html擴展名保存
--ignore-length 忽略 `Content-Length'頭域
--header=STRING 在headers中插入字符串 STRING
--proxy-user=USER 設定代理的用戶名爲 USER
--proxy-passwd=PASS 設定代理的密碼爲 PASS
--referer=URL 在HTTP請求中包含 `Referer: URL'頭
-s, --save-headers 保存HTTP頭到文件
-U, --user-agent=AGENT 設定代理的名稱爲 AGENT而不是 Wget/VERSION.
--no-http-keep-alive 關閉 HTTP活動鏈接 (永遠鏈接).
--cookies=off 不使用 cookies.
--load-cookies=FILE 在開始會話前從文件 FILE中加載cookie
--save-cookies=FILE 在會話結束後將 cookies保存到 FILE文件中
FTP 選項:
-nr, --dont-remove-listing 不移走 `.listing'文件
-g, --glob=on/off 打開或關閉文件名的 globbing機制
--passive-ftp 使用被動傳輸模式 (缺省值).
--active-ftp 使用主動傳輸模式
--retr-symlinks 在遞歸的時候,將鏈接指向文件(而不是目錄)
遞歸下載:
-r, --recursive 遞歸下載--慎用!
-l, --level=NUMBER 最大遞歸深度 (inf 或 0 代表無窮).
--delete-after 在現在完畢後局部刪除文件
-k, --convert-links 轉換非相對鏈接爲相對鏈接
-K, --backup-converted 在轉換文件X之前,將之備份爲 X.orig
-m, --mirror 等價於 -r -N -l inf -nr.
-p, --page-requisites 下載顯示HTML文件的所有圖片
遞歸下載中的包含和不包含(accept/reject):
-A, --accept=LIST 分號分隔的被接受擴展名的列表
-R, --reject=LIST 分號分隔的不被接受的擴展名的列表
-D, --domains=LIST 分號分隔的被接受域的列表
--exclude-domains=LIST 分號分隔的不被接受的域的列表
--follow-ftp 跟蹤HTML文檔中的FTP鏈接
--follow-tags=LIST 分號分隔的被跟蹤的HTML標籤的列表
-G, --ignore-tags=LIST 分號分隔的被忽略的HTML標籤的列表
-H, --span-hosts 當遞歸時轉到外部主機
-L, --relative 僅僅跟蹤相對鏈接
-I, --include-directories=LIST 允許目錄的列表
-X, --exclude-directories=LIST 不被包含目錄的列表
-np, --no-parent 不要追溯到父目錄
使用方式:tar [-cxtzjvfpPN] 文件與目錄
tar -xzvf test.tar.gz
-c :建立一個壓縮文件的參數指令(create 的意思);
-x :解開一個壓縮文件的參數指令!
-t :查看 tarfile 裏面的文件!
特別注意,在參數的下達中, c/x/t 僅能存在一個!不可同時存在!
因爲不可能同時壓縮與解壓縮。
-z :是否同時具有 gzip 的屬性?亦即是否需要用 gzip 壓縮?
-j :是否同時具有 bzip2 的屬性?亦即是否需要用 bzip2 壓縮?
-v :壓縮的過程中顯示文件!這個常用,但不建議用在背景執行過程!
-f :使用檔名,請留意,在 f 之後要立即接檔名喔!不要再加參數!
例如使用『 tar -zcvfP tfile sfile』就是錯誤的寫法,要寫成
『 tar -zcvPf tfile sfile』纔對
-p :使用原文件的原來屬性(屬性不會依據使用者而變)
-P :可以使用絕對路徑來壓縮!
-N :比後面接的日期(yyyy/mm/dd)還要新的纔會被打包進新