1. 程式人生 > >100 個 Linux 常用命令大全(下)

100 個 Linux 常用命令大全(下)

51.groups 檢視登陸使用者支援的群組, 第一個輸出的群組為有效群組

52.newgrp 切換有效群組

53.groupadd [-g gid] 組名 | 新增組

-g  設定新增組的特定組id

54.groupmod [-g gid] [-n group_name] 群組名 | 修改組資訊

-g  修改既有的 GID 數字

-n  修改既有的組名

55.groupdel [groupname] | 刪除群組

56.gpasswd | 群組管理員功能

root管理員動作:

    -gpasswd groupname 設定密碼

    -gpasswd [-A user1,...] [-M user3,...] groupname

        -A   groupname 的主控權交由後面的使用者管理(該群組的管理員)

        -M  將某些賬號加入這個群組當中

    -gpasswd [-r] groupname

        -r   groupname 的密碼移除

群組管理員動作:

    - gpasswd [-ad] user groupname

        -a  將某位使用者加入到 groupname 這個群組當中

        -d  將某位使用者移除出 groupname 這個群組當中

57.chfn修改個人資訊

58.mount [-t vfstype] [-o options] device dir

-ro 採用只讀方式掛接裝置

-rw 採用讀寫方式掛接裝置

eg:mount /home/mydisk.iso /tmp/mnt 通過mnt訪問mydisk內的內容

59.umount 取消掛載

60.cut

-b :以位元組為單位進行分割。這些位元組位置將忽略多位元組字元邊界,除非也指定了 -n 標誌。

-c :以字元為單位進行分割。

-d :自定義分隔符,預設為製表符。

-f  :與-d一起使用,指定顯示哪個區域。

61.sort

-n   依照數值的大小排序。

-o<</span>輸出檔案>   將排序後的結果存入指定的檔案。

-r   以相反的順序來排序。

-t<</span>分隔字元>   指定排序時所用的欄位分隔字元。

-k  選擇以哪個區間進行排序。

62.wc 統計指定檔案中的位元組數、字數、行數, 並將統計結果顯示輸出

-l filename 報告行數

-c filename 報告位元組數

-m filename 報告字元數

-w filename 報告單詞數

63.uniq 去除檔案中相鄰的重複行

清空/新建檔案,將內容重定向輸入進去

&> 正確、錯誤都重定向過去

後面追加

64.set 顯示環境變數和普通變數

65.env 顯示環境變數

66.export 把普通變數變成環境變數

67.unset 刪除一個環境變數

aaa(){} 定義函式

68.read

-p  接提示字元

-t  接等待的秒數

69.declaretypeset

-i 宣告為整數

-a 宣告為陣列

-f 宣告為函式

-r 宣告為只讀

70.ulimit 限制使用者的某些系統資源

-f   shell 可以建立的最大檔案容量 (一般可能設定為 2GB)單位為 Kbytes eg: ulimit -f 1024

限制使用者僅能建立 1MBytes 以下的容量的檔案

71.df [選項] [檔案] | 顯示指定磁碟檔案的可用空間,如果沒有檔名被指定,則所有當前被掛載的檔案系統的可用空間將被顯示

-a  顯示全部檔案系統

-h  檔案大小友好顯示

-l  只顯示本地檔案系統

-i  顯示inode資訊

-T  顯示檔案系統型別

72.du [選項] [檔案] | 顯示每個檔案和目錄的磁碟使用空間

-h  方便閱讀的方式

-s  只顯示總和的大小

73.ln [引數] [原始檔或目錄] [目標檔案或目錄] | 某一個檔案在另外一個位置建立一個同步的連結

-s  建立軟連線

-v  顯示詳細的處理過程

74.diff [引數] [檔案1或目錄1] [檔案2或目錄2] | 比較單個檔案或者目錄內容

-b  不檢查空格字元的不同。

-B  不檢查空白行。

-i  不檢查大小寫

-q  僅顯示差異而不顯示詳細資訊

eg: diff a b > parch.log 比較兩個檔案的不同併產生補丁

75.date [引數]… [+格式] | 顯示或設定系統的日期與時間

%H 小時(00-23來表示)

%M 分鐘(00-59來表示)

%P AMPM

%D 日期(含年月日)

%U 該年中的週數。

date -s “2015-10-17 01:01:01″ //時間設定

date +%Y%m%d         //顯示前天年月日

date +%Y%m%d --date="+1 day/month/year"  //顯示前一天//年的日期

date +%Y%m%d --date="-1 day/month/year"  //顯示後一天//年的日期

date -d '2 weeks' 2周後的日期

76.cal [引數] 月份] [年份] | 檢視日曆

-1  顯示當月的月曆

-3  顯示前、當、後一個月的日曆

-m  顯示星期一為一個星期的第一天

-s  (預設)星期天為第一天

-j  顯示當月是一年中的第幾天的日曆

-y  顯示當前年份的日曆

77.ps | 列出當前程序的快照

a   顯示所有的程序

-a  顯示同一終端下的所有程式

e   顯示環境變數

f   顯示程序間的關係

-H  顯示樹狀結構

r   顯示當前終端的程式

T   顯示當前終端的所有程式

-au 顯示更詳細的資訊

-aux    顯示所有包含其他使用者的行程

-u  指定使用者的所有程序

78.top [引數] | 顯示當前系統正在執行的程序的相關資訊,包括程序ID、記憶體佔用率、CPU佔用率等

79.kill [引數] [程序號] | 殺死程序

80.free [引數] | 顯示Linux系統中空閒的、已用的實體記憶體及swap記憶體,及被核心使用的buffer

81.vmstat | 對作業系統的虛擬記憶體、程序、CPU活動進行監控

82.iostat [引數] [時間t] [次數n](每隔t時間重新整理一次,最多重新整理n次)| 對系統的磁碟操作活動進行監視,彙報磁碟活動統計情況,同時也會彙報出CPU使用情況

-p[磁碟] 顯示磁碟和分割槽的情況

83.watch [引數] [命令] |重複執行某一命令以觀察變化

-n  時隔多少秒重新整理

-d  高亮顯示動態變化

84.at [引數] [時間] | 在一個指定的時間執行一個指定任務,只能執行一次

HH:MM[am|pm] + number [minutes|hours|days|weeks] 強制在某年某月某日的某時刻進行該項任務

atq 檢視系統未執行的任務

atrm n 刪除編號為n的任務

at -c n 顯示編號為n的任務的內容

85.crontab | 定時任務排程

file    載入crontab

-e  編輯某個使用者的crontab檔案內容

-l  顯示某個使用者的crontab檔案內容

-r  刪除某個使用者的crontab檔案

86.ifconfig [網路裝置] [引數] | 檢視和配置網路裝置

87.route | 顯示和操作IP路由表

88.ping [引數] [主機名或IP地址] | 測試與目標主機的連通性

-q  只顯示最後的結果

89.netstat | 顯示與IPTCPUDPICMP協議相關的統計資料

90.telnet [引數] [主機] | 用於遠端登入,採用明文傳送報文,安全性不好

91.rcp [引數] [原始檔] [目標檔案] | 遠端檔案拷貝

-r  遞迴複製

-p  保留原始檔的屬性

usage: rcp –r remote_hostname:remote_dir local_dir

92.wget [引數] [URL地址] | 直接從網路上下載檔案

-o FILE 把記錄寫到FILE檔案中    eg : wget -O a.txt URL

wget --limit-rate=300k URL  限速下載

93.awk

-F 分隔符 以分隔符分隔內容

{}  要執行的指令碼內容 eg:cat /etc/passwd |awk  -F ':'  '{print $1"\t"$7}'

94.sed 對資料行進行替換、刪除、新增、選取等操作

a   新增,在新的下一行出現

c   取代,取代 n1,n2 之間的行 eg: sed '1,2c Hi' ab

d   刪除

i   插入,在新的上一行出現

95.paste 合併檔案,需確保合併的兩檔案行數相同

-d  指定不同於空格或tab鍵的域分隔符

-s  按行合併,單獨一個檔案為一行

96.su [引數] user | 切換登陸

-l  切換時連同環境變數、工作目錄一起改變

-c command  執行command變回原來的使用者

97.sudo | 以特定使用者的許可權執行特定命令

-l  列出當前使用者可執行的命令

-u username#uid 以指定使用者執行命令