Linux 文件管理常用命令2
Linux 文件管理常用命令2.
mren
功能說明:更改MS-DOS文件或目錄的名稱,或是移動文件或目錄。
語 法:mren [源文件或目錄...][目標文件或目錄]
補充說明:mren為MS-DOS工具指令,模擬MS-DOS的ren指令,可更改MS-DOS文件或目錄名稱。除此之外,ren也可移動文件或目錄,但僅限於在同一設備內。
----------------------------------
mread
功能說明:將MS-DOS文件複製到Linux/Unix的目錄中。
語 法:mread
補充說明:mread為mtools工具指令,可將MS-DOS文件複製到Linux的文件系統中。這個指令目前已經不常用,一般都使用mcopy指令來代替。
--------------------------------------
mmove
功能說明:在MS-DOS文件系統中,移動文件或目錄,或更改名稱。
語 法:mmove [源文件或目錄...][目標文件或目錄]
補充說明:mmove為mtools工具指令,模擬MS-DOS的move指令,可在MS-DOS文件系統中移動現有的文件或目錄,或是更改現有文件或目錄的名稱。
-----------------------------------
mktemp
功能說明:建立暫存文件。
語 法:mktemp [-qu][文件名參數]
補充說明:mktemp可建立一個暫存文件,供shell script使用。
參 數:
-q 執行時若發生錯誤,不會顯示任何信息。
-u 暫存文件會在mktemp結束前先行刪除。
[文件名參數] 文件名參數必須是以"自訂名稱.XXXXXX"的格式。
-----------------------------------
find
功能說明:查找文件或目錄。
語 法:find [目錄...][-amin <分鐘>][-anewer <參考文件或目錄>][-atime <24>][-cmin <分鐘>][-cnewer <參考文件或目錄>][-ctime <24>][-daystart][-depyh][-empty][-exec <執行指令>][-false][-fls <列表文件>][-follow][-fprint <列表文件>][-fprint0 <列表文件>][-fprintf <列表文件><輸出格式>][-fstype <文件系統類型>][-gid <群組識別碼>][-group <群組名稱>][-help][-ilname <範本樣式>][-iname <範本樣式>][-inum ][-ipath <範本樣式>][-iregex <範本樣式>][-links <連接數目>][-lname <範本樣式>][-ls][-maxdepth <目錄層級>][-mindepth <目錄層級>][-mmin <分鐘>][-mount]
[-mtime <24>][-name <範本樣式>][-newer <參考文件或目錄>][-nogroup] [-nouser][-ok <執行指令>][-path <範本樣式>][-perm <許可權數值>][-print][-print0][-printf <輸出格式>][-prune][-regex <範本樣式>][-size <文件大小>][-true][-type <文件類型>][-uid <用戶識別碼>][-used <日數>][-user <擁有者名稱>][-version][-xdev][-xtype <文件類型>]
補充說明:find指令用於查找符合條件的文件。任何位於參數之前的字元串都將被視為欲查找的目錄。
參 數:
-amin<分鐘> 查找在指定時間曾被存取過的文件或目錄,單位以分鐘計算。
-anewer<參考文件或目錄> 查找其存取時間較指定文件或目錄的存取時間更接近現在的文件或目錄。
-atime<24> 查找在指定時間曾被存取過的文件或目錄,單位以24小時計算。
-cmin<分鐘> 查找在指定時間之時被更改的文件或目錄。
-cnewer<參考文件或目錄> 查找其更改時間較指定文件或目錄的更改時間更接近現在的文件或目錄。
-ctime<24> 查找在指定時間之時被更改的文件或目錄,單位以24小時計算。
-daystart 從本日開始計算時間。
-depth 從指定目錄下最深層的子目錄開始查找。
-expty 尋找文件大小為0 Byte的文件,或目錄下沒有任何子目錄或文件的空目錄。
-exec<執行指令> 假設find指令的回傳值為True,就執行該指令。
-false 將find指令的回傳值皆設為False。
-fls<列表文件> 此參數的效果和指定"-ls"參數類似,但會把結果保存為指定的列表文件。
-follow 排除符號連接。
-fprint<列表文件> 此參數的效果和指定"-print"參數類似,但會把結果保存成指定的列表文件。
-fprint0<列表文件> 此參數的效果和指定"-print0"參數類似,但會把結果保存成指定的列表文件。
-fprintf<列表文件><輸出格式> 此參數的效果和指定"-printf"參數類似,但會把結果保存成指定的列表文件。
-fstype<文件系統類型> 只尋找該文件系統類型下的文件或目錄。
-gid<群組識別碼> 查找符合指定之群組識別碼的文件或目錄。
-group<群組名稱> 查找符合指定之群組名稱的文件或目錄。
-help或--help 在線幫助。
-ilname<範本樣式> 此參數的效果和指定"-lname"參數類似,但忽略字元大小寫的差別。
-iname<範本樣式> 此參數的效果和指定"-name"參數類似,但忽略字元大小寫的差別。
-inum 查找符合指定的inode編號的文件或目錄。
-ipath<範本樣式> 此參數的效果和指定"-ipath"參數類似,但忽略字元大小寫的差別。
-iregex<範本樣式> 此參數的效果和指定"-regexe"參數類似,但忽略字元大小寫的差別。
-links<連接數目> 查找符合指定的硬連接數目的文件或目錄。
-iname<範本樣式> 指定字元串作為尋找符號連接的範本樣式。
-ls 假設find指令的回傳值為True,就將文件或目錄名稱列出到標準輸出。
-maxdepth<目錄層級> 設置最大目錄層級。
-mindepth<目錄層級> 設置最小目錄層級。
-mmin<分鐘> 查找在指定時間曾被更改過的文件或目錄,單位以分鐘計算。
-mount 此參數的效果和指定"-xdev"相同。
-mtime<24> 查找在指定時間曾被更改過的文件或目錄,單位以24小時計算。
-name<範本樣式> 指定字元串作為尋找文件或目錄的範本樣式。
-newer<參考文件或目錄> 查找其更改時間較指定文件或目錄的更改時間更接近現在的文件或目錄。
-nogroup 找出不屬於本地主機群組識別碼的文件或目錄。
-noleaf 不去考慮目錄至少需擁有兩個硬連接存在。
-nouser 找出不屬於本地主機用戶識別碼的文件或目錄。
-ok<執行指令> 此參數的效果和指定"-exec"參數類似,但在執行指令之前會先詢問用戶,若回答"y"或"Y",則放棄執行指令。
-path<範本樣式> 指定字元串作為尋找目錄的範本樣式。
-perm<許可權數值> 查找符合指定的許可權數值的文件或目錄。
-print 假設find指令的回傳值為True,就將文件或目錄名稱列出到標準輸出。格式為每列一個名稱,每個名稱之前皆有"./"字元串。
-print0 假設find指令的回傳值為True,就將文件或目錄名稱列出到標準輸出。格式為全部的名稱皆在同一行。
-printf<輸出格式> 假設find指令的回傳值為True,就將文件或目錄名稱列出到標準輸出。格式可以自行指定。
-prune 不尋找字元串作為尋找文件或目錄的範本樣式。
-regex<範本樣式> 指定字元串作為尋找文件或目錄的範本樣式。
-size<文件大小> 查找符合指定的文件大小的文件。
-true 將find指令的回傳值皆設為True。
-typ<文件類型> 只尋找符合指定的文件類型的文件。
-uid<用戶識別碼> 查找符合指定的用戶識別碼的文件或目錄。
-used<日數> 查找文件或目錄被更改之後在指定時間曾被存取過的文件或目錄,單位以日計算。
-user<擁有者名稱> 查找符合指定的擁有者名稱的文件或目錄。
-version或--version 顯示版本信息。
-xdev 將範圍局限在先行的文件系統中。
-xtype<文件類型> 此參數的效果和指定"-type"參數類似,差別在於它針對符號連接檢查。
-----------------------------
file
功能說明:辨識文件類型。
語 法:file [-beLvz][-f <名稱文件>][-m <魔法數字文件>...][文件或目錄...]
補充說明:通過file指令,我們得以辨識該文件的類型。
參 數:
-b 列出辨識結果時,不顯示文件名稱。
-c 詳細顯示指令執行過程,便於排錯或分析程序執行的情形。
-f<名稱文件> 指定名稱文件,其內容有一個或多個文件名稱呢感,讓file依序辨識這些文件,格式為每列一個文件名稱。
-L 直接顯示符號連接所指向的文件的類別。
-m<魔法數字文件> 指定魔法數字文件。
-v 顯示版本信息。
-z 嘗試去解讀壓縮文件的內容。
-----------------------------------
diffstat(differential status)
功能說明:根據diff的比較結果,顯示統計數字。
語 法:diff [-wV][-n <文件名長度>][-p <文件名長度>]
補充說明:diffstat讀取diff的輸出結果,然後統計各文件的插入,刪除,修改等差異計量。
參 數:
-n<文件名長度> 指定文件名長度,指定的長度必須大於或等於所有文件中最長的文件名。
-p<文件名長度> 與-n參數相同,但此處的<文件名長度>包括了文件的路徑。
-w 指定輸出時欄位的寬度。
-V 顯示版本信息。
------------------------------------------
indent
功能說明:調整C原始代碼文件的格式。
語 法:indent [參數][源文件] 或 indent [參數][源文件][-o 目標文件]
補充說明:indent可辨識C的原始代碼文件,並加以格式化,以方便程序設計師閱讀。
參 數:
-bad或--blank-lines-after-declarations 在聲明區段或加上空白行。
-bap或--blank-lines-after-procedures 在程序或加上空白行。
-bbb或--blank-lines-after-block-comments 在註釋區段后加上空白行。
-bc或--blank-lines-after-commas 在聲明區段中,若出現逗號即換行。
-bl或--braces-after-if-line if(或是else,for等等)與後面執行區段的"{"不同行,且"}"自成一行。
-bli<縮排格數>或--brace-indent<縮排格數> 設置{ }縮排的格數。
-br或--braces-on-if-line if(或是else,for等等)與後面執行跛段的"{"不同行,且"}"自成一行。
-bs或--blank-before-sizeof 在sizeof之後空一格。
-c<欄數>或--comment-indentation<欄數> 將註釋置於程序碼右側指定的欄位。
-cd<欄數>或--declaration-comment-column<欄數> 將註釋置於聲明右側指定的欄位。
-cdb或--comment-delimiters-on-blank-lines 註釋符號自成一行。
-ce或--cuddle-else 將else置於"}"(if執行區段的結尾)之後。
-ci<縮排格數>或--continuation-indentation<縮排格數> 敘述過長而換行時,指定換行后縮排的格數。
-cli<縮排格數>或--case-indentation-<縮排格數> 使用case時,switch縮排的格數。
-cp<欄數>或-else-endif-column<欄數> 將註釋置於else與elseif敘述右側定的欄位。
-cs或--space-after-cast 在cast之後空一格。
-d<縮排格數>或-line-comments-indentation<縮排格數> 針對不是放在程序碼右側的註釋,設置其縮排格數。
-di<欄數>或--declaration-indentation<欄數> 將聲明區段的變數置於指定的欄位。
-fc1或--format-first-column-comments 針對放在每行最前端的註釋,設置其格式。
-fca或--format-all-comments 設置所有註釋的格式。
-gnu或--gnu-style 指定使用GNU的格式,此為預設值。
-i<格數>或--indent-level<格數> 設置縮排的格數。
-ip<格數>或--parameter-indentation<格數> 設置參數的縮排格數。
-kr或--k-and-r-style 指定使用Kernighan&Ritchie的格式。
-lp或--continue-at-parentheses 敘述過長而換行,且敘述中包含了括弧時,將括弧中的每行起始欄位內容垂直對其排列。
-nbad或--no-blank-lines-after-declarations 在聲明區段后不要加上空白行。
-nbap或--no-blank-lines-after-procedures 在程序后不要加上空白行。
-nbbb或--no-blank-lines-after-block-comments 在註釋區段后不要加上空白行。
-nbc或--no-blank-lines-after-commas 在聲明區段中,即使出現逗號,仍舊不要換行。
-ncdb或--no-comment-delimiters-on-blank-lines 註釋符號不要自成一行。
-nce或--dont-cuddle-else 不要將else置於"}"之後。
-ncs或--no-space-after-casts 不要在cast之後空一格。
-nfc1或--dont-format-first-column-comments 不要格式化放在每行最前端的註釋。
-nfca或--dont-format-comments 不要格式化任何的註釋。
-nip或--no-parameter-indentation 參數不要縮排。
-nlp或--dont-line-up-parentheses 敘述過長而換行,且敘述中包含了括弧時,不用將括弧中的每行起始欄位垂直對其排列。
-npcs或--no-space-after-function-call-names 在調用的函數名稱之後,不要加上空格。
-npro或--ignore-profile 不要讀取indent的配置文件.indent.pro。
-npsl或--dont-break-procedure-type 程序類型與程序名稱放在同一行。
-nsc或--dont-star-comments 註解左側不要加上星號(*)。
-nsob或--leave-optional-semicolon 不用處理多餘的空白行。
-nss或--dont-space-special-semicolon 若for或while區段僅有一行時,在分號前不加上空格。
-nv或--no-verbosity 不顯示詳細的信息。
-orig或--original 使用Berkeley的格式。
-pcs或--space-after-procedure-calls 在調用的函數名稱與"{"之間加上空格。
-psl或--procnames-start-lines 程序類型置於程序名稱的前一行。
-sc或--start-left-side-of-comments 在每行註釋左側加上星號(*)。
-sob或--swallow-optional-blank-lines 刪除多餘的空白行。
-ss或--space-special-semicolon 若for或swile區段今有一行時,在分號前加上空格。
-st或--standard-output 將結果顯示在標準輸出設備。
-T 數據類型名稱縮排。
-ts<格數>或--tab-size<格數> 設置tab的長度。
-v或--verbose 執行時顯示詳細的信息。
-version 顯示版本信息。
--------------------------------------
paste
功能說明:合併文件的列。
語 法:paste [-s][-d <間隔字元>][--help][--version][文件...]
補充說明:paste指令會把每個文件以列對列的方式,一列列地加以合併。
參 數:
-d<間隔字元>或--delimiters=<間隔字元> 用指定的間隔字元取代跳格字元。
-s或--serial 串列進行而非平行處理。
--help 在線幫助。
--version 顯示幫助信息。
--------------------------------
diff(differential)
功能說明:比較文件的差異。
語 法:diff [-abBcdefHilnNpPqrstTuvwy][-<行數>][-C <行數>][-D <巨集名稱>][-I <字元或字元串>][-S <文件>][-W <寬度>][-x <文件或目錄>][-X <文件>][--help][--left-column][--suppress-common-line][文件或目錄1][文件或目錄2]
補充說明:diff以逐行的方式,比較文本文件的異同處。所是指定要比較目錄,則diff會比較目錄中相同文件名的文件,但不會比較其中子目錄。
參 數:
-<行數> 指定要顯示多少行的文本。此參數必須與-c或-u參數一併使用。
-a或--text diff預設只會逐行比較文本文件。
-b或--ignore-space-change 不檢查空格字元的不同。
-B或--ignore-blank-lines 不檢查空白行。
-c 顯示全部內文,並標出不同之處。
-C<行數>或--context<行數> 與執行"-c-<行數>"指令相同。
-d或--minimal 使用不同的演演算法,以較小的單位來做比較。
-D<巨集名稱>或ifdef<巨集名稱> 此參數的輸出格式可用於前置處理器巨集。
-e或--ed 此參數的輸出格式可用於ed的script文件。
-f或-forward-ed 輸出的格式類似ed的script文件,但按照原來文件的順序來顯示不同處。
-H或--speed-large-files 比較大文件時,可加快速度。
-l<字元或字元串>或--ignore-matching-lines<字元或字元串> 若兩個文件在某幾行有所不同,而這幾行同時都包含了選項中指定的字元或字元串,則不顯示這兩個文件的差異。
-i或--ignore-case 不檢查大小寫的不同。
-l或--paginate 將結果交由pr程序來分頁。
-n或--rcs 將比較結果以RCS的格式來顯示。
-N或--new-file 在比較目錄時,若文件A僅出現在某個目錄中,預設會顯示:
Only in目錄:文件A若使用-N參數,則diff會將文件A與一個空白的文件比較。
-p 若比較的文件為C語言的程序碼文件時,顯示差異所在的函數名稱。
-P或--unidirectional-new-file 與-N類似,但只有當第二個目錄包含了一個第一個目錄所沒有的文件時,才會將這個文件與空白的文件做比較。
-q或--brief 僅顯示有無差異,不顯示詳細的信息。
-r或--recursive 比較子目錄中的文件。
-s或--report-identical-files 若沒有發現任何差異,仍然顯示信息。
-S<文件>或--starting-file<文件> 在比較目錄時,從指定的文件開始比較。
-t或--expand-tabs 在輸出時,將tab字元展開。
-T或--initial-tab 在每行前面加上tab字元以便對齊。
-u,-U<列數>或--unified=<列數> 以合併的方式來顯示文件內容的不同。
-v或--version 顯示版本信息。
-w或--ignore-all-space 忽略全部的空格字元。
-W<寬度>或--width<寬度> 在使用-y參數時,指定欄寬。
-x<文件名或目錄>或--exclude<文件名或目錄> 不比較選項中所指定的文件或目錄。
-X<文件>或--exclude-from<文件> 您可以將文件或目錄類型存成文本文件,然後在=<文件>中指定此文本文件。
-y或--side-by-side 以並列的方式顯示文件的異同之處。
--help 顯示幫助。
--left-column 在使用-y參數時,若兩個文件某一行內容相同,則僅在左側的欄位顯示該行內容。
--suppress-common-lines 在使用-y參數時,僅顯示不同之處。
---------------------------------
ln(link)
功能說明:連接文件或目錄。
語 法:ln [-bdfinsv][-S <字尾備份字元串>][-V <備份方式>][--help][--version][源文件或目錄][目標文件或目錄] 或 ln [-bdfinsv][-S <字尾備份字元串>][-V <備份方式>][--help][--version][源文件或目錄...][目的目錄]
補充說明:ln指令用在連接文件或目錄,如同時指定兩個以上的文件或目錄,且最後的目的地是一個已經存在的目錄,則會把前面指定的所有文件或目錄複製到該目錄中。若同時指定多個文件或目錄,且最後的目的地並非是一個已存在的目錄,則會出現錯誤信息。
參 數:
-b或--backup 刪除,覆蓋目標文件之前的備份。
-d或-F或--directory 建立目錄的硬連接。
-f或--force 強行建立文件或目錄的連接,不論文件或目錄是否存在。
-i或--interactive 覆蓋既有文件之前先詢問用戶。
-n或--no-dereference 把符號連接的目的目錄視為一般文件。
-s或--symbolic 對源文件建立符號連接,而非硬連接。
-S<字尾備份字元串>或--suffix=<字尾備份字元串> 用"-b"參數備份目標文件.
《解決方案》
謝謝分享