程序員必須掌握的Linux命令


在文章最前面給大家推薦一個查詢Linux命令的網站,如果man命令里面的英文文檔看不懂,可以去這個網站里面查詢。點擊這里 下面介紹的命令為了避免篇幅太多,也不會展示全部參數,大家也可以去這個網站進程詳細的查詢。

man:幫助命令

​ 示例:man ps

​ 這條指令會顯示出關於ps命令的詳細說明。下圖是man命令中常用的案件以及說明。

echo:輸出

​ 示例1:echo Hello Linux

​ 這條指令會打印出Hello Linux。

​ 示例2:echo $SHELL

​ $的作用是獲取變量的值,這條指令會打印出變量SHELL的值。

date:時間

​ 格式為:date [選項] [指定輸出格式]

​ 示例1:date

​ 以默認格式輸出當前系統時間。

​ 示例2:date "+%Y-%m-%d %H:%M:%S"

​ 以指定格式輸出當前系統時間,如:2020-09-20 12:15:38

​ 下圖為date命令中的參數以及作用

reboot:重啟

​ 這條指令用於重啟系統,默認只能由root用戶來重啟。

poweroff:關閉系統

​ 這條指令用於關閉系統,默認只能由root用戶來關閉。

wget:下載

​ wege命令用於在終端中下載網絡文件,格式為:wget [參數] 下載地址

​ 示例:wget http://localhost/test.txt

​ 下圖為wget命令的參數以及作用

ps:查看進程狀態

​ ps命令用於查看系統中的進程狀態。

​ 示例:ps -a

​ 以上指令會顯示所有進程。下圖為ps命令的參數以及作用。

top:任務管理器

​ top命令可以動態的監視進程活動以及系統的負債信息,相當於Windows系統中的任務管理器。

​ top命令使用起來非常簡單,不需要額外參數,但是需要看懂里面的信息。以下圖為例,簡單的介紹下各行各列代表的意思。

​ 第一行:系統時間、運行時間、登陸的終端數、系統負載(三個值分別代表1分鍾、5分鍾、15分鍾內的平均值,數值越小說明負載越低)。

​ 第二行:進程總數、運行中的進程數、睡眠中的進程數、停止的進程數、僵死的進程數。

​ 第三行:第一個代表用戶占用資源百分比、第二個系統內核占用資源百分比。

​ 第四行和第五行分別代表物理內存的信息和虛擬內存的信息。

pidof:查詢某個指定進程的PID值

​ 這個命令使用格式為:pidof [參數] [服務名稱]

​ 示例:pidof sshd

​ 這條指令會顯示出sshd這個進程的PID。

kill:終止某個進程

​ 使用格式為:kill [參數] [進程PID]

​ 示例:kill 666

​ 終止PID為666的進程。

killall:終止某個服務的所有進程

​ 一般來說,復雜的程序會有多個進程同時提供服務,這個時候想結束這個程序的所有進程如果使用kill一個個結束就有點麻煩了,這個時候就可以用上killall

​ 示例:killall httpd

ifconfig:查看網絡配置以及信息

​ 這個命令可以用來查看本機的網卡名稱、IP地址、MAC地址等網絡信息。

uanme:查看系統內核與版本信息

​ 示例:uname -a

​ 這條指令會顯示出內核名稱、主機名、發行版本、系統時間等信息。

uptime:查看系統負載信息

​ 這個命令可以顯示當前系統的時間、已運行時間、啟動的終端數、平均負載值(1分鍾、5分鍾、15分鍾)。

free:查看內存信息

​ 示例:free -h

​ 這條指令會顯示內存實時的使用量信息。

who:當前登錄用戶的信息

​ 這個命令可以顯示出所有正在登陸本機的用戶名以及他們開啟的終端信息。

last:查看系統登錄記錄

​ 這個命令可以查看本機的登錄記錄。

history:顯示執行過的命令

​ 顯示出命令記錄后,我們可以使用“!行號數字”來重復執行一次某條命令。

sosreport:收集系統信息並輸出診斷文檔

pwd:顯示當前用戶所處的工作目錄

cd:切換工作路徑

​ 這個命令應該是我們最常用的一個命令了,除了直接使用絕對路徑來進行切換,還可以使用一些快捷方式來切換。

​ 示例1:cd - 返回之前的目錄

​ 示例2:cd ~ 切換到家目錄

​ 示例3:cd .. 返回上級目錄

ls:顯示目錄中文件的信息

​ 使用格式為:ls [參數] [文件]

​ 示例:ls -al

​ -a代表顯示全部文件,包括隱藏文件。-l代表顯示詳情。

cat:查看純文本文件(內容較少)

​ 示例:cat -n readme.txt

​ -n可以顯示行號

more:查看純文本文件(內容較多)

​ 示例:more readme.txt

head:查看文本前N行

​ 示例:head -n 20 readme.txt

​ -n 20代表前20行。

tail:查看文本后N行

​ 示例:tail -n 20 -f readme.txt

​ -n 20代表后20行。-f可以持續刷新這個文件,也就是說這個文本發生改變的話,我們能及時看到。

tr:替換文本中的字符

​ 使用格式:tr [原始字符] [目標字符]

​ 示例:cat readme.txt | tr [a-z] [A-Z]

​ 這條指令中使用到了管道符‘|’,它的作用是把前面一條指令的輸出當作后面一條指令的輸入。所以整體的意思就是把readme.txt的小寫字母換成大寫字母。

wc: 統計文本信息

​ wc命令可以統計指定文本的行數、字數、字節數,格式為:wc [參數] [指定文本]

​ 其參數如下圖

​ 示例:wc -l readme.txt

stat:查看文件存儲信息

​ 示例:stat readme.txt

cut:顯示行中的指定部分

​ 示例:cut -d: -f1 readme.txt

​ 以冒號為間隔查詢第一行

diff:比較多個文本的差異

​ 示例:diff -q -c readme1.txt readme2.txt

​ 顯示出readme1和readme2差異之處。

touch:創建空白文件

​ 這個命令用於創建空白文件或設置文件的時間。格式為:touch [參數] [文件]

​ 如果是創建文件,就很簡單,直接touch [文件名]

​ 如果是修改文件時間,則需要用到以下參數

​ 示例:touch -d "2020-09-20 20:20:20" readme.txt

mkdir:創建空白目錄

​ 示例:mkdir -p newDir/myDir

​ -p用於遞歸創建目錄。

cp:復制目錄或文件

​ 下圖為常用命令

​ 示例:cp readme1.txt /etc/readmeCopy.txt

mv:剪切或重命名文件

​ 如果剪切后的目錄不變,就是重命名。

​ 示例:mv readme.txt newName.txt

rm:刪除文件或目錄

​ 示例:rm readme.txt

dd:按照指定大小和個數復制文件

​ 下圖為常用參數

​ 示例:dd if=/dev/zero of=newFile count=1 bs=560M

​ 這條命令的作用應該很清楚,其中塊的大小設置為560M,個數為1。

file:查看文件類型

​ 示例:file readme.txt

tar:解壓縮文件

​ 常用參數如下圖。

​ 示例:tar -czvf etc.tar.gz /etc

​ 把目錄壓縮為etc.tar.gz。其中這四個參數這個縮寫,但是需要注意-f必須放在最后一位。

grep:在文本進行關鍵詞搜索

​ 這個命令也是會經常使用到的,常用參數如下圖。

​ 示例:grep word readme.txt

​ 在readme.txt中搜索word這個單詞。如果我們把grep換成grepE,則搜索的單詞可以寫成正則表達式。

find:按照指定條件查找文件

​ 常用參數如下圖。

​ 示例:find /etc -name "host*" -print

​ 顯示/etc目錄下host開頭的文件。

useradd:創建新的用戶

​ 這個命令的參數如下圖

​ 示例:useradd -d /home/linux -u 8888 newUser

​ 這條指令中-d指定了這個新用戶的家目錄。-u為其指定UID。需要注意的是Linux系統中系統管理員的UID為0.系統用戶UID為1~999.普通用戶UID從1000開始。所以如果我們不指定UID,默認的是從1000開始的。新建完用戶之后記得用后面的passwd為其設置密碼。

groupadd:創建用戶組

​ 在上面一個指令中,如果創建用戶時不指定一個用戶組,那么就會默認創建一個與用戶同名的用戶組。如果你需要指定一個用戶組,那么這個用戶組必須存在。那么我們就可以用上這個命令了。

​ 示例:groupadd admin

usermod:修改用戶屬性

​ 學過Linux系統都應該聽說過Linux系統中的一切都是文件,因此用戶也不例外。用戶的信息保存在/etc/passwd文件中。可以直接使用文本編輯器來修改,也可以使用usermod這個命令來修改。

​ 這個命令的參數如下圖

​ 示例:usermod -u 6666 newUser

passwd:修改用戶密碼

​ passwd用於修改用戶密碼、過期時間、認證信息等。普通用戶只能用它來修改自身的密碼。只有root管理員才能使用其他功能,而且root管理員修改自身和他人密碼時不需要驗證舊密碼。

​ 這個命令的參數如下圖

​ 示例:passwd

​ 如果是root用戶只需要輸入兩次新密碼即可。如果需要使用其他參數只需要在passwd命令加上對應的參數即可。

### userdel:刪除用戶

​ 示例:userdel -r -f newUser

​ -r的作用是強制刪除用戶、-f的作用是同時刪除用戶的家目錄。

su:切換用戶身份

​ 如果在學習環境下,我們可以使用的都是root身份,但是實際工作環境中,肯定不會讓你這么干。前面我們也學了新建用戶的命令,現在就用su命令來切換到這個賬號。

​ 示例1:su - newUser

​ 如果是root用戶切換到普通用戶,是不需要輸入密碼的。這條指令中-的作用是把環境變量信息也變更為新用戶對應的信息。建議在切換用戶時加上這個減號。

​ 如果是普通用戶切換到root,則需要輸入密碼。

​ 示例2:su - root

​ 輸入這條指令后,終端就會顯示Password,需要你輸入密碼。

id:顯示用戶信息

​ 示例:id newUser

文中圖片摘自《Linux就該這么學》


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM