Linux常用命令總結以及舉例

2021-10-26 14:59:50 字數 4783 閱讀 5827

linux常用命令總結以及舉例(2008-06-24 21:24:39)

1. $ uname -a

linux linux 2.4.18-4gb #1 wed mar 27 13:57:05 utc 2002 i686 unknown

在這裡我們從左向右看到常規的系統資訊。每條資訊都有自己的選項(在下面的圓括號中),可以單獨顯示:

作業系統名稱為 linux(-s) 。

本機的網路節點名為 linux (-n) 。

作業系統發布版本為 4.5.18-4gb (-r) 。

作業系統版本為 #1 wed mar 27 13:57:05 utc 2002 (-v) 。

機器型別為 i686 (-m) 。

這裡的處理器型別 (-p) 為未知。

2. stty 顯示關於您的終端設定的資訊:

$ stty -a

speed 38400 baud; rows 40; columns 103; line = 0;

intr = ^c; quit = ^\; erase = ^?; kill = ^u; eof = ^d; eol = ; eol2 = ; start = ^q;

stop = ^s; susp = ^z; rprnt = ^r; werase = ^w; lnext = ^v; flush = ^o; min = 1; time = 0;

-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts -ignbrk -brkint -ignpar -parmrk -inpck

-istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany -imaxbel

opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0

isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke

第二行和第三行顯示了將在命令列分別呼叫的特殊字元和鍵序列。例如, "^z" 即 cntrl-z 在本系統中傳送乙個終端休止符。退出符號以 "^\" 即 cntrl-\ 傳送,而我們可以將其改為 "^x" ,如下所示:

$ stty quit ^x

在這種情況下,您實際要輸入 ^ 符號,而不是 cntrl 鍵。這種改變只在當前視窗中起效。為了使這種改變永久生效,需要在您的 .bashrc 檔案中輸入該語句。

3.diff 比較兩個檔案。它返回那些導致檔案不同的行,並返回關於如何使檔案變得相同的一些含義隱晦的輸出:

$ diff test.out test2.out

0a1> another test.

在這裡我們被告知,需要將 "another test." 這一行新增到 test.out ,以便使它與 test2.

out 相似。第乙個字元 "0" 是要在 test.out 中編輯的行號; "a" 表示該行應該被新增到 test.

out ,以便與 test2.out 的第一行 "1" 相匹配。如果我們需要更改 test.

out ,則第二個字元也可以是 "c" ,而如果我們需要從 test.out 中刪除一些內容,則第二個字元是 "d" 。

您可能希望使乙個檔案與另乙個檔案相似,以便為某些**提供補丁。 diff 還經常作為分析工具,用於驗證程式或指令碼 — 例如 sed 指令碼 — 的輸出是否是所預期的輸出。

4.date 命令可用於顯示或設定日期。如果使用者具有超級使用者許可權,則他或她可以通過在以下命令中提供乙個數字型字串來設定日期:

$ date 010*******

此命令將日期設定為 2004 年 (04) 1 月 1 日 (0101) 凌晨 1 時 (0100) 。

但是,任何使用者可以用所需的格式來顯示日期。注意在格式序列之前需要乙個加號 "+" 。如果沒有出現此命令的預期輸出,則嘗試將它包含在單引號中:

$ date +'%h%m%s'

204748

您可以在序列中包含空格,這時您需要使用雙引號:

$ date +"%h %m %s"

20 47 51

在日期的主頁上列有三十多種不同的格式序列,這些序列可以按需要結合起來,以獲得您最後的輸出格式。

date 的輸出還可以用於指令碼中,如:

$ date -d '2 day'

thu jan 29 19:02:02 est 2004

-d 選項指示 date 顯示其後字串中所描述的時間。在上例中,我們要求顯示從現在起( 2004 年 1 月 27 日)兩天後的日期。我們也可以要求顯示三天前的日期,其命令為:

$ date -d '-3 day'

sun jan 25 20:56:59 est 2004

date 多種功能的另乙個示例是能夠向其輸出附加字串,為生成唯一的檔名提供了一種便利的方法。

$ ls -l | cat > $(date +ls_%d%b%y%h%m.out)

$ ls ls_*.out

ls_04feb041633.out

在這裡,我們將乙個長檔案列表的輸出傳送給 cat ,它將我們的輸出再傳送到乙個名為 ls_04feb041609.out 的檔案。注意我們為檔名使用了乙個變數,由美元符號 "$" 表示。

依次將 "ls_" 和 ".out" 附加到日期,其格式為月份中的日 (%d) 、本地的月份名稱縮寫 (%b) 、年份的最後兩位數字 (%y) 、小時 (%h) 和分鐘 (%m) ,從而產生此檔名。

5.sort 列可以用兩種不同的格式指定。如果使用 -k 選項,則列的位置從 1 開始進行編號。

您還可以使用 +pos1 格式,從第一列編號為零開始進行列的編號。以下兩個命令產生相同的輸出:

$ ls -l *.out | sort +5 -7

$ ls -l *.out | sort -k 6,8

-rw-r--r-- 1 bluher users 375 dec 5 2002 fdisk.out

-rw-r--r-- 1 bluher users 2447 dec 28 20:15 ls.out

-rw-r--r-- 1 bluher users 590 jan 4 21:24 greps.out

-rw-r--r-- 1 bluher users 78 jan 4 21:25 sgrep.out

...在預設情況下, sort 命令的列分隔符是空格和製表符。可以使用 -t sep 選項指定其他分隔符,其中 sep 是您指定的分隔符號。

sort 的預設順序是從最低到最高,利用 -r 選項可以將順序顛倒。

sort 可用於很多不同的任務。例如,它可用於對檔案輸出進行排序(如 /etc/passwd ),或者如我們在下面所看到的那樣,對 du 的輸出進行排序。當使用 -m 選項時, sort 將檔案合併,實際上並沒有對它們進行排序。

但是,如果您希望將它們排序,就應該在檔案合併前對它們排序。

sort 經常與 uniq 命令一起使用,從已排序的檔案中刪除完全相同的行。 uniq 命令在管道中經常跟在 sort 命令的後面,還可以使用 -c 選項來計算某一行所出現的次數,或者使用 -d 選項,只報告完全相同的行:

$ sort -m test.out test2_sort.out | uniq -c

1 another test.

1 testing testing

2 this is a test.

在這裡我們合併兩個檔案 test.out 和 test2_sort.out 。

然後我們使用 -c 選項,將輸出傳送到 uniq ,這樣最後的結果是按字母順序排列的列表,完全相同的行被刪除,並帶有乙個關於每行出現頻率的報告。

6.印表機控制

在多數情況下,印表機命令的使用相對較為明確。通過在 lpr 命令後面指定檔名,將作業傳送到印表機。如果沒有提供檔名,則假定使用標準輸入。

使用 lpq 命令,您可以獲得關於傳送到印表機的作業的狀態報告。當您指定作業號時, lprm 將作業從行印表機後台列印佇列中刪除。

$ lpr grep2.out

$ lpq

printer:lp@linux 'lpdfilter drv=upp method=auto color=yes'

queue:1 printable job

server:pid 1929 active

unspooler:pid 1930 active

status:waiting for subserver to exit at 21:24:14.637

rank owner/id class job files size time

active bluher@linux+928 a 928 grep2.out 779 21:24:14

done bluher a 877 (stdin) 117258 13:09:53

$ lprm 928

printer lp@linux:

checking perms 'cfa928linux.local'

dequeued 'cfa928linux.local'

在這裡,當我們將作業傳送到印表機後,我們查詢其狀態。 lpq 向我們顯示編號為 877 的作業已經完成,而我們剛傳送的作業編號為 928 。我們使用命令 lprm 928 將活動的作業從佇列中刪除。

7.磁碟資訊

無論您是維護自己的系統還是支援具有很多使用者的企業,監視磁碟空間都是系統管理員更重要的職責之一。 du 、 df 和 fdisk 命令提供了可用磁碟空間的不同檢視。

du 命令提供對每個目錄的檔案空間使用情況的評估。在預設情況下,測量的單位是塊的數目,塊的大小通常在安裝您的系統時確定。

Linux常用命令

touch 建立空檔案用在無法產生日誌檔案時。cp 加檔案如果是目錄者要加乙個選項r mv 可以進行改名 rmdir刪除空目錄 rm刪除檔案 r 刪除目錄 f 強制刪除 強制刪除目錄 more f 顯示下一頁 enter 下一行 q退出 head n 顯示n行 tail n 顯示後n行 f動態顯示 ...

Linux常用命令總結

liunx幫助命令 help pwd help s pwd 只顯示命令的格式資訊 touch help man ls info ls liunx檔案和目錄操作命令 ls ls l ll 列目錄命令 cd root,cd 目錄更改命令 mkdir directory1 directory2 建立目錄 ...

Linux常用命令手冊

no分類檔案管理 ps1 命令名ls 用法及引數ls a 功能註解 列出當前目錄下的所有檔案,包括以.頭的隱含檔案 對應章節 12345678910111213141516171819 檔案管理檔案管理檔案管理檔案管理檔案管理檔案管理檔案管理檔案管理檔案管理檔案管理檔案管理 lspwdcdcdcdc...