1. 程式人生 > 實用技巧 >166個最常用的Linux命令,哪些你還不知道?

166個最常用的Linux命令,哪些你還不知道?

linux命令是對Linux系統進行管理的命令。對於Linux系統來說,無論是中央處理器、記憶體、磁碟驅動器、鍵盤、滑鼠,還是使用者等都是檔案,Linux系統管理的命令是它正常執行的核心。

線上查詢及幫助命令(2個)

man:檢視命令幫助,命令的詞典,更復雜的還有info,但不常用。

help:檢視Linux內建命令的幫助,比如cd命令。

檔案和目錄操作命令(18個)

ls:全拼list,功能是列出目錄的內容及其內容屬性資訊。

cd:全拼change directory,功能是從當前工作目錄切換到指定的工作目錄。

cp:全拼copy,其功能為複製檔案或目錄。

find:查詢的意思,用於查詢目錄及目錄下的檔案。

mkdir:全拼make directories,其功能是建立目錄。

mv:全拼move,其功能是移動或重新命名檔案。

pwd:全拼print working directory,其功能是顯示當前工作目錄的絕對路徑。

rename:用於重新命名檔案。

rm:全拼remove,其功能是刪除一個或多個檔案或目錄。

rmdir:全拼remove empty directories,功能是刪除空目錄。

touch:建立新的空檔案,改變已有檔案的時間戳屬性。

tree:功能是以樹形結構顯示目錄下的內容。

basename:顯示檔名或目錄名。

dirname:顯示檔案或目錄路徑。

chattr:改變檔案的擴充套件屬性。

lsattr:檢視檔案擴充套件屬性。

file:顯示檔案的型別。

md5sum:計算和校驗檔案的MD5值。

檢視檔案及內容處理命令(21個)

cat:全拼concatenate,功能是用於連線多個檔案並且列印到螢幕輸出或重定向到指定檔案中。

tactac:是cat的反向拼寫,因此命令的功能為反向顯示檔案內容。

more:分頁顯示檔案內容。

less:分頁顯示檔案內容,more命令的相反用法。

head:顯示檔案內容的頭部。

tail:顯示檔案內容的尾部。

cut:將檔案的每一行按指定分隔符分割並輸出。

split:分割檔案為不同的小片段。

paste:按行合併檔案內容。

sort:對檔案的文字內容排序。

uniq:去除重複行。

wc:統計檔案的行數、單詞數或位元組數。

iconv:轉換檔案的編碼格式。

dos2unix:將DOS格式檔案轉換成UNIX格式。

diff:全拼difference,比較檔案的差異,常用於文字檔案。

vimdiff:命令列視覺化檔案比較工具,常用於文字檔案。

rev:反向輸出檔案內容。

grep/egrep:過濾字串,三劍客老三。

join:按兩個檔案的相同欄位合併。

tr:替換或刪除字元。

vi/vim:命令列文字編輯器。

檔案壓縮及解壓縮命令(4個)

tar:打包壓縮。oldboy

unzip:解壓檔案。

gzipgzip:壓縮工具。

zip:壓縮工具。

資訊顯示命令(11個)

uname:顯示作業系統相關資訊的命令。

hostname:顯示或者設定當前系統的主機名。

dmesg:顯示開機資訊,用於診斷系統故障。

uptime:顯示系統執行時間及負載。

stat:顯示檔案或檔案系統的狀態。

du:計算磁碟空間使用情況。

df:報告檔案系統磁碟空間的使用情況。

top:實時顯示系統資源使用情況。

free:檢視系統記憶體。

date:顯示與設定系統時間。

cal:檢視日曆等時間資訊。

搜尋檔案命令(4個)

which:查詢二進位制命令,按環境變數PATH路徑查詢。

find:從磁碟遍歷查詢檔案或目錄。

whereis:查詢二進位制命令,按環境變數PATH路徑查詢。

locate:從資料庫 (/var/lib/mlocate/mlocate.db) 查詢命令,使用updatedb更新庫。

使用者管理命令(10個)

useradd:新增使用者。

usermod:修改系統已經存在的使用者屬性。

userdel:刪除使用者。

groupadd:新增使用者組。

passwd:修改使用者密碼。

chage:修改使用者密碼有效期限。

id:檢視使用者的uid,gid及歸屬的使用者組。

su:切換使用者身份。

visudo:編輯/etc/sudoers檔案的專屬命令。

sudo:以另外一個使用者身份(預設root使用者)執行事先在sudoers檔案允許的命令。

基礎網路操作命令(11個)

telnet:使用TELNET協議遠端登入。

ssh:使用SSH加密協議遠端登入。

scp:全拼secure copy,用於不同主機之間複製檔案。

wget:命令列下載檔案。

ping:測試主機之間網路的連通性。

route:顯示和設定linux系統的路由表。

ifconfig:檢視、配置、啟用或禁用網路介面的命令。

ifup:啟動網絡卡。

ifdown:關閉網絡卡。

netstat:檢視網路狀態。

ss:檢視網路狀態。

深入網路操作命令(9個)

nmap:網路掃描命令。

lsof:全名list open files,也就是列舉系統中已經被開啟的檔案。

mail:傳送和接收郵件。

mutt:郵件管理命令。

nslookup:互動式查詢網際網路DNS伺服器的命令。

dig:查詢DNS解析過程。

host:查詢DNS的命令。

traceroute:追蹤資料傳輸路由狀況。

tcpdump:命令列的抓包工具。

有關磁碟與檔案系統的命令(16個)

mount:掛載檔案系統。

umount:解除安裝檔案系統。

fsck:檢查並修復Linux檔案系統。

dd:轉換或複製檔案。

dumpe2fs:匯出ext2/ext3/ext4檔案系統資訊。

dumpe:xt2/3/4檔案系統備份工具。

fdisk:磁碟分割槽命令,適用於2TB以下磁碟分割槽。

parted:磁碟分割槽命令,沒有磁碟大小限制,常用於2TB以下磁碟分割槽。

mkfs:格式化建立Linux檔案系統。

partprobe:更新核心的硬碟分割槽表資訊。

e2fsck:檢查ext2/ext3/ext4型別檔案系統。

mkswap:建立Linux交換分割槽。

swapon:啟用交換分割槽。

swapoff:關閉交換分割槽。

sync:將記憶體緩衝區內的資料寫入磁碟。

resize2fs:調整ext2/ext3/ext4檔案系統大小。

系統許可權及使用者授權相關命令(4個)

chmod:改變檔案或目錄許可權。

chown:改變檔案或目錄的屬主和屬組。

chgrp:更改檔案使用者組。

umask:顯示或設定許可權掩碼。

檢視系統使用者登陸資訊的命令(7個)

whoami:顯示當前有效的使用者名稱稱,相當於執行id -un命令。

who:顯示目前登入系統的使用者資訊。

w:顯示已經登陸系統的使用者列表,並顯示使用者正在執行的指令。

last:顯示登入系統的使用者。

lastlog:顯示系統中所有使用者最近一次登入資訊。

users:顯示當前登入系統的所有使用者的使用者列表。

finger:查詢並顯示使用者資訊。

內建命令及其它(19個)

echo:列印變數,或直接輸出指定的字串

printf:將結果格式化輸出到標準輸出。

rpm:管理rpm包的命令。

yum:自動化簡單化地管理rpm包的命令。

watch:週期性的執行給定的命令,並將命令的輸出以全屏方式顯示。

alias:設定系統別名。

unalias:取消系統別名。

date:檢視或設定系統時間。

clear:清除螢幕,簡稱清屏。

history:檢視命令執行的歷史紀錄。

eject:彈出光碟機。

time:計算命令執行時間。

nc:功能強大的網路工具。

xargs:將標準輸入轉換成命令列引數。

exec:呼叫並執行指令的命令。

export:設定或者顯示環境變數。

unset:刪除變數或函式。

type:用於判斷另外一個命令是否是內建命令。

bc:命令列科學計算器。

系統管理與效能監視命令(9個)

chkconfig:管理Linux系統開機啟動項。

vmstat:虛擬記憶體統計。

mpstat:顯示各個可用CPU的狀態統計。

iostat:統計系統IO。

sar:全面地獲取系統的CPU、執行佇列、磁碟 I/O、分頁(交換區)、記憶體、 CPU中斷和網路等效能資料。

ipcs:用於報告Linux中程序間通訊設施的狀態,顯示的資訊包括訊息列表、共享記憶體和訊號量的資訊。

ipcrm:用來刪除一個或更多的訊息佇列、訊號量集或者共享記憶體標識。

strace:用於診斷、除錯Linux使用者空間跟蹤器。我們用它來監控使用者空間程序和核心的互動,比如系統呼叫、訊號傳遞、程序狀態變更等。

ltrace:命令會跟蹤程序的庫函式呼叫,它會顯現出哪個庫函式被呼叫。

關機/重啟/登出和檢視系統資訊的命令(6個)

shutdown:關機。

halt:關機。

poweroff:關閉電源。

logout:退出當前登入的Shell。

exit:退出當前登入的Shell。

Ctrl+d:退出當前登入的Shell的快捷鍵。

程序管理相關命令(15個)

bg:將一個在後臺暫停的命令,變成繼續執行 (在後臺執行)。

fg:將後臺中的命令調至前臺繼續執行。

jobs:檢視當前有多少在後臺執行的命令。

kill:終止程序。

killall:通過程序名終止程序。

pkill:通過程序名終止程序。

crontab:定時任務命令。

ps:顯示程序的快照。

pstree:樹形顯示程序。

nice/renice:調整程式執行的優先順序。

nohup:忽略掛起訊號執行指定的命令。

pgrep:查詢匹配條件的程序。

runlevel:檢視系統當前執行級別。

init:切換執行級別。

service:啟動、停止、重新啟動和關閉系統服務,還可以顯示所有系統服務的當前狀態。

最後

關注公眾號:程式設計師追風。回覆 003 領取2020最新Java面試題手冊(200多頁PDF文件)