前言
總結了一下 21 條最頻繁使用的 Linux 命令,面試官若是考察你對 Linux 系統熟不熟會問的問題基本都在這了,也是可讓你在工做中事半功倍的命令。java
建議能夠收藏一下,做爲一個 Linux 命令速查手冊,之後忽然腦子抽的時候想不起來某條命令能夠翻一下。linux
固然除了這些很是很是經常使用的命令以外,我也整理了完整版的Linux學習筆記,點擊便可免費領取。面試
1、文件和目錄
1. cd命令
它用於切換當前目錄,它的參數是要切換到的目錄的路徑,能夠是絕對路徑,也能夠是相對路徑:less
- cd /home 進入 '/ home' 目錄
- cd .. 返回上一級目錄
- cd ../.. 返回上兩級目錄
- cd 進入我的的主目錄
- cd ~user1 進入我的的主目錄
- cd - 返回上次所在的目錄
2. pwd命令
pwd 顯示工做路徑ide
3. ls命令
查看文件與目錄的命令,list之意:工具
- ls 查看目錄中的文件
- ls -l 顯示文件和目錄的詳細資料
- ls -a 列出所有文件,包含隱藏文件
- ls -R 連同子目錄的內容一塊兒列出(遞歸列出),等於該目錄下的全部文件都會顯示出來
- ls [0-9] 顯示包含數字的文件名和目錄名
4. cp 命令
用於複製文件,copy之意,它還能夠把多個文件一次性地複製到一個目錄下:性能
- -a :將文件的特性一塊兒複製
- -p :連同文件的屬性一塊兒複製,而非使用默認方式,與-a類似,經常使用於備份
- -i :若目標文件已經存在時,在覆蓋時會先詢問操做的進行
- -r :遞歸持續複製,用於目錄的複製行爲
- -u :目標文件與源文件有差別時纔會複製
5. mv命令
用於移動文件、目錄或改名,move之意:學習
- -f :force強制的意思,若是目標文件已經存在,不會詢問而直接覆蓋
- -i :若目標文件已經存在,就會詢問是否覆蓋
- -u :若目標文件已經存在,且比目標文件新,纔會更新
6. rm 命令
用於刪除文件或目錄,remove之意:unix
- -f :就是force的意思,忽略不存在的文件,不會出現警告消息
- -i :互動模式,在刪除前會詢問用戶是否操做
- -r :遞歸刪除,最經常使用於目錄刪除,它是一個很是危險的參數
2、查看文件內容
7. cat命令
用於查看文本文件的內容,後接要查看的文件名,一般可用管道與more和less一塊兒使用:排序
- cat file1 從第一個字節開始正向查看文件的內容
- tac file1 從最後一行開始反向查看一個文件的內容
- cat -n file1 標示文件的行數
- more file1 查看一個長文件的內容
- head -n 2 file1 查看一個文件的前兩行
- tail -n 2 file1 查看一個文件的最後兩行
- tail -n +1000 file1 從1000行開始顯示,顯示1000行之後的
- cat filename | head -n 3000 | tail -n +1000 顯示1000行到3000行
- cat filename | tail -n +3000 | head -n 1000 從第3000行開始,顯示1000(即顯示3000~3999行)
3、文件搜索
8. find命令()
- find / -name file1 從 '/' 開始進入根文件系統搜索文件和目錄
- find / -user user1 搜索屬於用戶 'user1' 的文件和目錄
- find /usr/bin -type f -atime +100 搜索在過去100天內未被使用過的執行文件
- find /usr/bin -type f -mtime -10 搜索在10天內被建立或者修改過的文件
- whereis halt 顯示一個二進制文件、源碼或man的位置
- which halt 顯示一個二進制文件或可執行文件的完整路徑
刪除大於50M的文件:
find /var/mail/ -size +50M -exec rm {} \; 4、文件的權限
使用 "+" 設置權限,使用 "-" 用於取消
9. chmod 命令
- ls -lh 顯示權限
- chmod ugo+rwx directory1 設置目錄的全部人(u)、羣組(g)以及其餘人(o)以讀(r,4 )、寫(w,2)和執行(x,1)的權限
- chmod go-rwx directory1 刪除羣組(g)與其餘人(o)對目錄的讀寫執行權限
10. chown 命令
改變文件的全部者:
- chown user1 file1 改變一個文件的全部人屬性
- chown -R user1 directory1 改變一個目錄的全部人屬性並同時改變改目錄下全部文件的屬性
- chown user1:group1 file1 改變一個文件的全部人和羣組屬性
11. chgrp 命令
改變文件所屬用戶組:
chgrp group1 file1 改變文件的羣組
5、文本處理
12. grep 命令
分析一行的信息,若當中有咱們所須要的信息,就將該行顯示出來,該命令一般與管道命令一塊兒使用,用於對一些命令的輸出進行篩選加工等等:
- grep Aug /var/log/messages 在文件 '/var/log/messages'中查找關鍵詞"Aug"
- grep ^Aug /var/log/messages 在文件 '/var/log/messages'中查找以"Aug"開始的詞彙
- grep [0-9] /var/log/messages 選擇 '/var/log/messages' 文件中全部包含數字的行
- 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文件中刪除全部空白行(搜索公衆號Java知音,回覆「2021」,送你一份Java面試題寶典)
13. paste 命令
- paste file1 file2 合併兩個文件或兩欄的內容
-
paste -d '+' file1 file2 合併兩個文件或兩欄的內容,中間用"+"區分
14. sort 命令
- sort file1 file2 排序兩個文件的內容
- sort file1 file2 | uniq 取出兩個文件的並集(重複的行只保留一份)
- sort file1 file2 | uniq -u 刪除交集,留下其餘的行
-
sort file1 file2 | uniq -d 取出兩個文件的交集(只留下同時存在於兩個文件中的文件)
15. comm 命令
- comm -1 file1 file2 比較兩個文件的內容只刪除 'file1' 所包含的內容
- comm -2 file1 file2 比較兩個文件的內容只刪除 'file2' 所包含的內容
- comm -3 file1 file2 比較兩個文件的內容只刪除兩個文件共有的部分
6、打包和壓縮文件
16. tar 命令
對文件進行打包,默認狀況並不會壓縮,若是指定了相應的參數,它還會調用相應的壓縮程序(如gzip和bzip等)進行壓縮和解壓:
顯示當前系統的java進程狀況,及其id號:
jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一個顯示當前全部java進程pid的命令,簡單實用,很是適合在linux/unix平臺上簡單察看當前java進程的一些簡單狀況。
18 ps命令
用於將某個時間點的進程運行狀況選取下來並輸出,process之意:
- -A :全部的進程均顯示出來
- -a :不與terminal有關的全部進程
- -u :有效用戶的相關進程
- -x :通常與a參數一塊兒使用,可列出較完整的信息
- -l :較長,較詳細地將PID的信息列出
ps aux # 查看系統全部的進程數據
ps ax # 查看不與terminal有關的全部進程
ps -lA # 查看系統全部的進程數據
ps axjf # 查看連同一部分進程樹狀態 19 kill命令
用於向某個工做(%jobnumber)或者是某個PID(數字)傳送一個信號,它一般與ps和jobs命令一塊兒使用:
20 killall命令
(向一個命令啓動的進程發送一個信號)
21 top命令
是Linux下經常使用的性能分析工具,可以實時顯示系統中各個進程的資源佔用情況,相似於Windows的任務管理器。
如何殺死進程:
圖形化界面的方式