1. 程式人生 > 實用技巧 >檔案的常用命令及基本操作(2)

檔案的常用命令及基本操作(2)

poweroff

選項

-n:關閉作業系統時不執行sync操作;
-w:不真正關閉作業系統,僅在日誌檔案“/var/log/wtmp”中;
-d:關閉作業系統時,不將操作寫入日誌檔案“/var/log/wtmp”中新增相應的記錄;
-f:強制關閉作業系統;
-i:關閉作業系統之前關閉所有的網路介面;
-h:關閉作業系統之前將系統中所有的硬體設定為備用模式。

shutdown

選項

c:當執行“shutdown -h 11:50”指令時,只要按+鍵就可以中斷關機的指令;
-f:重新啟動時不執行fsck;
-F:重新啟動時執行fsck;
-h:將系統關機;
-k:只是送出資訊給所有使用者,但不會實際關機;
-n:不呼叫
init
程式進行關機,而由shutdown自己進行; -r:shutdown之後重新啟動; -t<秒數>:送出警告資訊和刪除資訊之間要延遲多少秒。

reboot

選項

-d:重新開機時不把資料寫入記錄檔案/var/tmp/wtmp。本引數具有“-n”引數效果;
-f:強制重新開機,不呼叫shutdown指令的功能;
-i:在重開機之前,先關閉所有網路介面;
-n:重開機之前不檢查是否有未結束的程式;
-w:僅做測試,並不真正將系統重新開機,只會把重開機的資料寫入/var/log目錄下的wtmp記錄檔案。

halt

選項

-d:不要在wtmp中記錄;
-f:不論目前的runlevel為何,不呼叫shutdown即強制關閉系統;
-i:在halt之前,關閉全部的網路介面;
-n:halt前,不用先執行
sync
; -p:halt之後,執行poweroff; -w:僅在wtmp中記錄,而不實際結束系統。

who

選項

-H或--heading:顯示各欄位的標題資訊列;
-i或-u或--idle:顯示閒置時間,若該使用者在前一分鐘之內有進行任何動作,將標示成"."號,如果該使用者已超過24小時沒有任何動作,則標示出"old"字串;
-m:此引數的效果和指定"am i"字串相同;
-q或--count:只顯示登入系統的帳號名稱和總人數;
-s:此引數將忽略不予處理,僅負責解決who指令其他版本的相容性問題;
-w或-T或--mesg或--message或--writable:顯示使用者的資訊狀態列;
--
help
:線上幫助; --version:顯示版本資訊。
 whoami

選項

--help:線上幫助;
--version:顯示版本資訊。
 w
-h:不列印頭資訊;
-u:當顯示當前程序和cpu時間時忽略使用者名稱;
-s:使用短輸出格式;
-f:顯示使用者從哪登入;
-V:顯示版本資訊。
 clear

clear命令用於清除當前螢幕終端上的任何資訊。


例項

直接輸入clear命令當前終端上的任何資訊就可被清除。

 su
su命令用於切換當前使用者身份到其他使用者身份,變更時須輸入所要變更的使用者帳號與密碼

選項
-c<指令>或--command=<指令>:執行完指定的指令後,即恢復原來的身份;
-f或——fast:適用於csh與tsch,使shell不用去讀取啟動檔案;
-l或——login:改變身份時,也同時變更工作目錄,以及HOME,SHELL,USER,logname。此外,也會變更PATH變數;
-m,-p或--preserve-environment:變更身份時,不要變更環境變數;
-s<shell>或--shell=<shell>:指定要執行的shell;
--help:顯示幫助;
--version;顯示版本資訊。
 man

選項

-a:在所有的man幫助手冊中搜索;
-f:等價於whatis指令,顯示給定關鍵字的簡短描述資訊;
-P:指定內容時使用分頁程式;
-M:指定man手冊搜尋的路徑。
 help

選項

-s:輸出短格式的幫助資訊。僅包括命令格式

 date

選項

-d<字串>:顯示字串所指的日期與時間。字串前後必須加上雙引號;
-s<字串>:根據字串來設定日期與時間。字串前後必須加上雙引號;
-u:顯示GMT;
--help:線上幫助;
--version:顯示版本資訊。
 cal

選項

-l:顯示單月輸出;
-3:顯示臨近三個月的日曆;
-s:將星期日作為月的第一天;
-m:將星期一作為月的第一天;
-j:顯示“julian”日期;
-y:顯示當前年的日曆。
 whatis
hatis命令是用於查詢一個命令執行什麼功能,並將查詢結果列印到終端上。

whereis

whereis命令用來定位指令的二進位制程式、原始碼檔案和man手冊頁等相關檔案的路徑。

whereis命令只能用於程式名的搜尋,而且只搜尋二進位制檔案(引數-b)、man說明檔案(引數-m)和原始碼檔案(引數-s)。如果省略引數,則返回所有資訊。

find相比,whereis查詢的速度非常快,這是因為linux系統會將系統內的所有檔案都記錄在一個數據庫檔案中,當使用whereis和下面即將介紹的locate時,會從資料庫中查詢資料,而不是像find命令那樣,通過遍歷硬碟來查詢,效率自然會很高。 但是該資料庫檔案並不是實時更新,預設情況下時一星期更新一次,因此,我們在用whereis和locate查詢檔案時,有時會找到已經被刪除的資料,或者剛剛建立檔案,卻無法查詢到,原因就是因為資料庫檔案沒有被更新.

選項

-b:只查詢二進位制檔案;
-B<目錄>:只在設定的目錄下查詢二進位制檔案;
-f:不顯示檔名前的路徑名稱;
-m:只查詢說明檔案;
-M<目錄>:只在設定的目錄下查詢說明檔案;
-s:只查詢原始程式碼檔案;
-S<目錄>只在設定的目錄下查詢原始程式碼檔案;
-u:查詢不包含指定型別的檔案。
 alias

選項

-p:列印已經設定的命令別名。
 unalias

選項

-a:取消所有命令別名。


 touch
touch命令有兩個功能:一是用於把已存在檔案的時間標籤更新為系統當前的時間(預設方式),它們的資料將原封不動地保留下來;二是用來建立新的空檔案。
選項
-a:或--time=atime或--time=access或--time=use  只更改存取時間;
-c:或--no-create  不建立任何檔案;
-d:<時間日期> 使用指定的日期時間,而非現在的時間;
-f:此引數將忽略不予處理,僅負責解決BSD版本touch指令的相容性問題;
-m:或--time=mtime或--time=modify  只更該變動時間;
-r:<參考檔案或目錄>  把指定檔案或目錄的日期時間,統統設成和參考檔案或目錄的日期時間相同;
-t:<日期時間>  使用指定的日期時間,而非現在的時間;
--help:線上幫助;
--version:顯示版本資訊。
 cut

cut命令用來顯示行中的指定部分,刪除檔案中指定欄位。cut經常用來顯示檔案的內容,類似於下的type命令。
   選項
-b:僅顯示行中指定直接範圍的內容;
-c:僅顯示行中指定範圍的字元;
-d:指定欄位的分隔符,預設的欄位分隔符為“TAB”;
-f:顯示指定欄位的內容;
-n:與“-b”選項連用,不分割多位元組字元;
--complement:補足被選擇的位元組、字元或欄位;
--out-delimiter=<欄位分隔符>:指定輸出內容是的欄位分割符;
--help:顯示指令的幫助資訊;
--version:顯示指令的版本資訊。
 du
du命令也是檢視使用空間的,但是與df命令不同的是Linux du命令是對檔案和目錄磁碟使用的空間的檢視,還是和df命令有一些區別的。
選項
-a或-all 顯示目錄中個別檔案的大小。
-b或-bytes 顯示目錄或檔案大小時,以byte為單位。
-c或--total 除了顯示個別目錄或檔案的大小外,同時也顯示所有目錄或檔案的總和。
-k或--kilobytes 以KB(1024bytes)為單位輸出。
-m或--megabytes 以MB為單位輸出。
-s或--summarize 僅顯示總計,只列出最後加總的值。
-h或--human-readable 以K,M,G為單位,提高資訊的可讀性。
-x或--one-file-xystem 以一開始處理時的檔案系統為準,若遇上其它不同的檔案系統目錄則略過。
-L<符號連結>或--dereference<符號連結> 顯示選項中所指定符號連結的原始檔大小。
-S或--separate-dirs 顯示個別目錄的大小時,並不含其子目錄的大小。
-X<檔案>或--exclude-from=<檔案> 在<檔案>指定目錄或檔案。
--exclude=<目錄或檔案> 略過指定的目錄或檔案。
-D或--dereference-args 顯示指定符號連結的原始檔大小。
-H或--si 與-h引數相同,但是K,M,G是以1000為換算單位。
-l或--count-links 重複計算硬體連結的檔案
dd
dd命令用於複製檔案並對原檔案的內容進行轉換和格式化處理
選項
bs=<位元組數>:將 ibs(輸入)與 obs(輸出)設成指定的位元組數;
cbs=<位元組數>:轉換時,每次只轉換指定的位元組數;
conv=<關鍵字>:指定檔案轉換的方式;
count=<區塊數>:僅讀取指定的區塊數;
ibs=<位元組數>:每次讀取的位元組數;
obs=<位元組數>:每次輸出的位元組數;
of=<檔案>:輸出到檔案;
seek=<區塊數>:一開始輸出時,跳過指定的區塊數;
skip=<區塊數>:一開始讀取時,跳過指定的區塊數;
--help:幫助;
--version:顯示版本資訊。
file
用來探測給定檔案的型別。file命令對檔案的檢查分為檔案系統、魔法幻數檢查和語言檢查3個過程

選項
-b:列出辨識結果時,不顯示檔名稱;
-c:詳細顯示指令執行過程,便於排錯或分析程式執行的情形;
-f<名稱檔案>:指定名稱檔案,其內容有一個或多個檔名稱時,讓file依序辨識這些檔案,格式為每列一個檔名稱;
-L:直接顯示符號連線所指向的檔案類別;
-m<魔法數字檔案>:指定魔法數字檔案;
-v:顯示版本資訊;
-z:嘗試去解讀壓縮檔案的內容。

-L:支援符號連線;
-f:顯示檔案系統狀態而非檔案狀態;
-t:以簡潔方式輸出資訊;
--help:顯示指令的幫助資訊;
--version:顯示指令的版本資訊。

vi
vi命令是UNIX作業系統和類UNIX作業系統中最通用的全螢幕純文字編輯器。
選項
Ctrl+u:向檔案首翻半屏;
Ctrl+d:向檔案尾翻半屏;
Ctrl+f:向檔案尾翻一屏;
Ctrl+b:向檔案首翻一屏;
Esc:從編輯模式切換到命令模式;
ZZ:命令模式下儲存當前檔案所做的修改後退出vi;
:行號:游標跳轉到指定行的行首;
:$:游標跳轉到最後一行的行首;
x或X:刪除一個字元,x刪除游標後的,而X刪除游標前的;
D:刪除從當前游標到游標所在行尾的全部字元;
dd:刪除游標行正行內容;
ndd:刪除當前行及其後n-1行;
nyy:將當前行及其下n行的內容儲存到暫存器?中,其中?為一個字母,n為一個數字;
p:貼上文字操作,用於將快取區的內容貼上到當前游標所在位置的下方;
P:貼上文字操作,用於將快取區的內容貼上到當前游標所在位置的上方;
/字串:文字查詢操作,用於從當前游標所在位置開始向檔案尾部查詢指定字串的內容,查詢的字串會被加亮顯示;
?name:文字查詢操作,用於從當前游標所在位置開始向檔案頭部查詢指定字串的內容,查詢的字串會被加亮顯示;
a,bs/F/T:替換文字操作,用於在第a行到第b行之間,將F字串換成T字串。其中,“s/”表示進行替換操作;
a:在當前字元後新增文字;
A:在行末新增文字;
i:在當前字元前插入文字;
I:在行首插入文字;
o:在當前行後面插入一空行;
O:在當前行前面插入一空行;
:wq:在命令模式下,執行存檔退出操作;
:w:在命令模式下,執行存檔操作;
:w!:在命令模式下,執行強制存檔操作;
:q:在命令模式下,執行退出vi操作;
:q!:在命令模式下,執行強制退出vi操作;
:e檔名:在命令模式下,開啟並編輯指定名稱的檔案;
:n:在命令模式下,如果同時開啟多個檔案,則繼續編輯下一個檔案;
:f:在命令模式下,用於顯示當前的檔名、游標所在行的行號以及顯示比例;
:set number:在命令模式下,用於在最左端顯示行號;
:set nonumber:在命令模式下,用於在最左端不顯示行號;