共計(jì) 6510 個(gè)字符,預(yù)計(jì)需要花費(fèi) 17 分鐘才能閱讀完成。
自動(dòng)寫(xiě)代碼機(jī)器人,免費(fèi)開(kāi)通
這篇文章給大家分享的是有關(guān)運(yùn)維人員常用的 Linux 命令有哪些的內(nèi)容。丸趣 TV 小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨丸趣 TV 小編過(guò)來(lái)看看吧。
一. 文件和目錄
1. cd 命令,用于切換當(dāng)前目錄,它的參數(shù)是要切換到的目錄的路徑,可以是絕對(duì)路徑,也可以是相對(duì)路徑。
cd /home 進(jìn)入 / home 目錄 cd .. 返回上一級(jí)目錄 cd ../.. 返回上兩級(jí)目錄 cd 進(jìn)入個(gè)人的主目錄 cd ~user1 進(jìn)入個(gè)人的主目錄 cd - 返回上次所在的目錄
2. pwd 命令,顯示工作路徑
[root@mailvip ~]# pwd /root
3. ls 命令,查看文件與目錄的命令,list 之意
ls 查看目錄中的文件 ls -l 顯示文件和目錄的詳細(xì)資料 ls -a 列出全部文件,包含隱藏文件 ls -R 連同子目錄的內(nèi)容一起列出(遞歸列出),等于該目錄下的所有文件都會(huì)顯示出來(lái) ls [0-9] 顯示包含數(shù)字的文件名和目錄名
4. cp 命令,用于復(fù)制文件,copy 之意,它還可以把多個(gè)文件一次性地復(fù)制到一個(gè)目錄下
-a :將文件的特性一起復(fù)制 -p :連同文件的屬性一起復(fù)制,而非使用默認(rèn)方式,與 - a 相似,常用于備份 -i :若目標(biāo)文件已經(jīng)存在時(shí),在覆蓋時(shí)會(huì)先詢問(wèn)操作的進(jìn)行 -r :遞歸持續(xù)復(fù)制,用于目錄的復(fù)制行為 // 經(jīng)常使用遞歸復(fù)制 -u :目標(biāo)文件與源文件有差異時(shí)才會(huì)復(fù)制
5. mv 命令,用于移動(dòng)文件、目錄或更名,move 之意
-f :force 強(qiáng)制的意思,如果目標(biāo)文件已經(jīng)存在,不會(huì)詢問(wèn)而直接覆蓋 -i :若目標(biāo)文件已經(jīng)存在,就會(huì)詢問(wèn)是否覆蓋 -u :若目標(biāo)文件已經(jīng)存在,且比目標(biāo)文件新,才會(huì)更新
6. rm 命令,用于刪除文件或目錄,remove 之意
-f :就是 force 的意思,忽略不存在的文件,不會(huì)出現(xiàn)警告消息 -i :互動(dòng)模式,在刪除前會(huì)詢問(wèn)用戶是否操作 -r :遞歸刪除,最常用于目錄刪除,它是一個(gè)非常危險(xiǎn)的參數(shù)
二、查看文件內(nèi)容
7. cat 命令,用于查看文本文件的內(nèi)容,后接要查看的文件名,通常可用管道與 more 和 less 一起使用
cat file1 從第一個(gè)字節(jié)開(kāi)始正向查看文件的內(nèi)容 tac file1 從最后一行開(kāi)始反向查看一個(gè)文件的內(nèi)容 cat -n file1 標(biāo)示文件的行數(shù) more file1 查看一個(gè)長(zhǎng)文件的內(nèi)容 head -n 2 file1 查看一個(gè)文件的前兩行 tail -n 2 file1 查看一個(gè)文件的最后兩行 tail -n +1000 file1 從 1000 行開(kāi)始顯示,顯示 1000 行以后的 cat filename | head -n 3000 | tail -n +1000 顯示 1000 行到 3000 行 cat filename | tail -n +3000 | head -n 1000 從第 3000 行開(kāi)始,顯示 1000(即顯示 3000~3999 行)
三. 文件搜索
8. find 命令,用來(lái)查找系統(tǒng)的
find / -name file1 從 / 開(kāi)始進(jìn)入根文件系統(tǒng)搜索文件和目錄 find / -user user1 搜索屬于用戶 user1 的文件和目錄 find /usr/bin -type f -atime +100 搜索在過(guò)去 100 天內(nèi)未被使用過(guò)的執(zhí)行文件 find /usr/bin -type f -mtime -10 搜索在 10 天內(nèi)被創(chuàng)建或者修改過(guò)的文件 whereis halt 顯示一個(gè)二進(jìn)制文件、源碼或 man 的位置 which halt 顯示一個(gè)二進(jìn)制文件或可執(zhí)行文件的完整路徑
刪除大于 50M 的文件:
find /var/mail/ -size +50M -exec rm {} \;
四. 文件的權(quán)限 – 使用 + 設(shè)置權(quán)限,使用 – 用于取消
9. chmod 命令,改變文件 / 文件夾權(quán)限
ls -lh 顯示權(quán)限
chmod ugo+rwx directory1 設(shè)置目錄的所有人 (u)、群組(g) 以及其他人 (o) 以讀(r,4 )、寫(xiě) (w,2) 和執(zhí)行 (x,1) 的權(quán)限 chmod go-rwx directory1 刪除群組 (g) 與其他人 (o) 對(duì)目錄的讀寫(xiě)執(zhí)行權(quán)限
10. chown 命令,改變文件的所有者
chown user1 file1 改變一個(gè)文件的所有人屬性 chown -R user1 directory1 改變一個(gè)目錄的所有人屬性并同時(shí)改變改目錄下所有文件的屬性 chown user1:group1 file1 改變一個(gè)文件的所有人和群組屬性
11. chgrp 命令,改變文件所屬用戶組
chgrp group1 file1 改變文件的群組
五. 文本處理
12. grep 命令,分析一行的信息,若當(dāng)中有我們所需要的信息,就將該行顯示出來(lái),該命令通常與管道命令一起使用,用于對(duì)一些命令的輸出進(jìn)行篩選加工等等
grep Aug /var/log/messages 在文件 /var/log/messages 中查找關(guān)鍵詞 Aug grep ^Aug /var/log/messages 在文件 /var/log/messages 中查找以 Aug 開(kāi)始的詞匯 grep [0-9] /var/log/messages 選擇 /var/log/messages 文件中所有包含數(shù)字的行 grep Aug -R /var/log/* 在目錄 /var/log 及隨后的目錄中搜索字符串 Aug sed s/stringa1/stringa2/g example.txt 將 example.txt 文件中的 string1 替換成 string2 sed /^$/d example.txt 從 example.txt 文件中刪除所有空白行
13. paste 命令
paste file1 file2 合并兩個(gè)文件或兩欄的內(nèi)容 paste -d + file1 file2 合并兩個(gè)文件或兩欄的內(nèi)容,中間用 + 區(qū)分
14. sort 命令
sort file1 file2 排序兩個(gè)文件的內(nèi)容 sort file1 file2 | uniq 取出兩個(gè)文件的并集(重復(fù)的行只保留一份) sort file1 file2 | uniq -u 刪除交集,留下其他的行 sort file1 file2 | uniq -d 取出兩個(gè)文件的交集(只留下同時(shí)存在于兩個(gè)文件中的文件)
15. comm 命令
comm -1 file1 file2 比較兩個(gè)文件的內(nèi)容只刪除 file1 所包含的內(nèi)容 comm -2 file1 file2 比較兩個(gè)文件的內(nèi)容只刪除 file2 所包含的內(nèi)容 comm -3 file1 file2 比較兩個(gè)文件的內(nèi)容只刪除兩個(gè)文件共有的部分
六、打包和壓縮文件
16. tar 命令,對(duì)文件進(jìn)行打包,默認(rèn)情況并不會(huì)壓縮,如果指定了相應(yīng)的參數(shù),它還會(huì)調(diào)用相應(yīng)的壓縮程序(如 gzip 和 bzip 等)進(jìn)行壓縮和解壓
-c :新建打包文件 -t :查看打包文件的內(nèi)容含有哪些文件名 -x :解打包或解壓縮的功能,可以搭配 -C(大寫(xiě))指定解壓的目錄,注意 -c,-t,- x 不能同時(shí)出現(xiàn)在同一條命令中 -j :通過(guò) bzip2 的支持進(jìn)行壓縮 / 解壓縮 -z :通過(guò) gzip 的支持進(jìn)行壓縮 / 解壓縮 -v :在壓縮 / 解壓縮過(guò)程中,將正在處理的文件名顯示出來(lái) -f filename :filename 為要處理的文件 -C dir :指定壓縮 / 解壓縮的目錄 dir
壓縮:tar -jcv -f filename.tar.bz2 要被處理的文件或目錄名稱 查詢:tar -jtv -f filename.tar.bz2 解壓:tar -jxv -f filename.tar.bz2 -C 欲解壓縮的目錄
bunzip2 file1.bz2 解壓一個(gè)叫做 file1.bz2 的文件 bzip2 file1 壓縮一個(gè)叫做 file1 的文件 gunzip file1.gz 解壓一個(gè)叫做 file1.gz 的文件 gzip file1 壓縮一個(gè)叫做 file1 的文件 gzip -9 file1 最大程度壓縮 rar a file1.rar test_file 創(chuàng)建一個(gè)叫做 file1.rar 的包 rar a file1.rar file1 file2 dir1 同時(shí)壓縮 file1 , file2 以及目錄 dir1 rar x file1.rar 解壓 rar 包 zip file1.zip file1 創(chuàng)建一個(gè) zip 格式的壓縮包 unzip file1.zip 解壓一個(gè) zip 格式壓縮包 zip -r file1.zip file1 file2 dir1 將幾個(gè)文件和目錄同時(shí)壓縮成一個(gè) zip 格式的壓縮包
七. 系統(tǒng)和關(guān)機(jī)(關(guān)機(jī)、重啟和登出)
shutdown -h now 關(guān)閉系統(tǒng)(1) init 0 關(guān)閉系統(tǒng)(2) telinit 0 關(guān)閉系統(tǒng)(3) shutdown -h hours:minutes 按預(yù)定時(shí)間關(guān)閉系統(tǒng) shutdown -c 取消按預(yù)定時(shí)間關(guān)閉系統(tǒng) shutdown -r now 重啟(1) reboot 重啟(2) logout 注銷(xiāo) time 測(cè)算一個(gè)命令(即程序)的執(zhí)行時(shí)間
八、進(jìn)程相關(guān)的命令
17. jps 命令,顯示當(dāng)前系統(tǒng)的 java 進(jìn)程情況,及其 id 號(hào)
jps(Java Virtual Machine Process Status Tool)是 JDK 1.5 提供的一個(gè)顯示當(dāng)前所有 java 進(jìn)程 pid 的命令,簡(jiǎn)單實(shí)用,非常適合在 linux/unix 平臺(tái)上簡(jiǎn)單察看當(dāng)前 java 進(jìn)程的一些簡(jiǎn)單情況。
18. ps 命令,用于將某個(gè)時(shí)間點(diǎn)的進(jìn)程運(yùn)行情況選取下來(lái)并輸出,process 之意
-A :所有的進(jìn)程均顯示出來(lái) -a :不與 terminal 有關(guān)的所有進(jìn)程 -u :有效用戶的相關(guān)進(jìn)程 -x :一般與 a 參數(shù)一起使用,可列出較完整的信息 -l :較長(zhǎng),較詳細(xì)地將 PID 的信息列出 ps aux # 查看系統(tǒng)所有的進(jìn)程數(shù)據(jù) ps ax # 查看不與 terminal 有關(guān)的所有進(jìn)程 ps -lA # 查看系統(tǒng)所有的進(jìn)程數(shù)據(jù) ps axjf # 查看連同一部分進(jìn)程樹(shù)狀態(tài)
19. kill 命令, 用于向某個(gè)工作(%jobnumber)或者是某個(gè) PID(數(shù)字)傳送一個(gè)信號(hào),它通常與 ps 和 jobs 命令一起使用
命令格式 : kill[命令參數(shù)][進(jìn)程 id]
命令參數(shù):
-l 信號(hào),若果不加信號(hào)的編號(hào)參數(shù),則使用“-l”參數(shù)會(huì)列出全部的信號(hào)名稱 -a 當(dāng)處理當(dāng)前進(jìn)程時(shí),不限制命令名和進(jìn)程號(hào)的對(duì)應(yīng)關(guān)系 -p 指定 kill 命令只打印相關(guān)進(jìn)程的進(jìn)程號(hào),而不發(fā)送任何信號(hào) -s 指定發(fā)送信號(hào) -u 指定用戶
實(shí)例 1:列出所有信號(hào)名稱 命令:kill -l 輸出:
[root@localhost test6]# kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR 31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3 38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8 43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13 48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7 58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2 63) SIGRTMAX-1 64) SIGRTMAX
說(shuō)明:
只有第 9 種信號(hào) (SIGKILL) 才可以無(wú)條件終止進(jìn)程,其他信號(hào)進(jìn)程都有權(quán)利忽略。 下面是常用的信號(hào):
HUP 1 終端斷線 INT 2 中斷(同 Ctrl + C) QUIT 3 退出(同 Ctrl + \) TERM 15 終止 KILL 9 強(qiáng)制終止 CONT 18 繼續(xù)(與 STOP 相反, fg/bg 命令) STOP 19 暫停(同 Ctrl + Z)
實(shí)例 2:得到指定信號(hào)的數(shù)值
[root@localhost test6]# kill -l KILL [root@localhost test6]# kill -l SIGKILL [root@localhost test6]# kill -l TERM [root@localhost test6]# kill -l SIGTERM [root@localhost test6]#
實(shí)例 3:先用 ps 查找進(jìn)程,然后用 kill 殺掉
命令:kill 3268 [root@localhost test6]# ps -ef|grep vim root 3268 2884 0 16:21 pts/1 00:00:00 vim install.log root 3370 2822 0 16:21 pts/0 00:00:00 grep vim [root@localhost test6]# kill 3268
實(shí)例 4:徹底殺死進(jìn)程
命令:kill ndash;9 3268 // -9 強(qiáng)制殺掉進(jìn)程
20. killall 命令,向一個(gè)命令啟動(dòng)的進(jìn)程發(fā)送一個(gè)信號(hào),用于殺死指定名字的進(jìn)程
命令格式 : killall[命令參數(shù)][進(jìn)程名]
命令參數(shù): -Z 只殺死擁有 scontext 的進(jìn)程 -e 要求匹配進(jìn)程名稱 -I 忽略小寫(xiě) -g 殺死進(jìn)程組而不是進(jìn)程 -i 交互模式,殺死進(jìn)程前先詢問(wèn)用戶 -l 列出所有的已知信號(hào)名稱 -q 不輸出警告信息 -s 發(fā)送指定的信號(hào) -v 報(bào)告信號(hào)是否成功發(fā)送 -w 等待進(jìn)程死亡 --help 顯示幫助信息 --version 顯示版本顯示
示例
1:殺死所有同名進(jìn)程 killall nginx killall -9 bash 2. 向進(jìn)程發(fā)送指定信號(hào) killall -TERM ngixn 或者 killall -KILL nginx
21. top 命令,是 Linux 下常用的性能分析工具,能夠?qū)崟r(shí)顯示系統(tǒng)中各個(gè)進(jìn)程的資源占用狀況,類似于 Windows 的任務(wù)管理器。
如何殺死進(jìn)程:
(1)圖形化界面的方式 (2)kill -9 pid (- 9 表示強(qiáng)制關(guān)閉) (3)killall -9 程序的名字 (4)pkill 程序的名字
查看進(jìn)程端口號(hào):
netstat -tunlp|grep 端口號(hào)
感謝各位的閱讀!關(guān)于“運(yùn)維人員常用的 Linux 命令有哪些”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
向 AI 問(wèn)一下細(xì)節(jié)
丸趣 TV 網(wǎng) – 提供最優(yōu)質(zhì)的資源集合!