Linux查漏補缺

很久不寵幸我的小u了,因爲面試常用的命令再複習一下吧!!!沖沖衝!!!

實際面試問題

  1. 請問linux兩臺機器之間傳文件,用的什麼端口
    • 請你說一說關於linux查看進程
    • 請你說幾個基本Linux命令
    • 請你說一說Linux命令(查看進程 、top命令、查看磁盤)
    • 請你說幾個inux指令
    • 請你說一下vector的特性
    • 查看端口號、進程的指令是 ?動態查看日誌的指令?怎麼判斷一個端口存不存在,磁盤滿了怎麼處理,刪除一個目錄下的txt文件,你還熟悉其他什麼linux指令?
    • 請你說一下vi裏面怎麼替換字符串
    • 請問contrab,uptime,du,netstat這幾個指令有什麼作用,如何查看磁盤分區狀態
    • 請問如何將文本中的T全部替換成t,將其中的一行復制新的一行出來
    • 自己常用linux命令:?
    • 寫一下grep,awk,sed幾個命令怎麼使用
    • 查看進程
    • 查看硬盤空間
    • 查看內外網ip
    • 在linux上搭建過別的服務麼
    • linux:~~怎麼查看hostname還是ip來着記不太清了,我不太清楚,猜了個ipconfig ~~~~ 內存使用量,我說的top~~ , 查看有某個詞的文件,我說的grep

Linux常用命令(top 30)

1. 查看進程 ps 命令

ps: 顯示當前進程的狀態
ps [options] [--help] 
  • ps a顯示現行終端機下的所有程序,包括其他用戶的程序。
  • ps -A 或 ps -e `顯示所有程序。
  • ps -w顯示加寬可以顯示較多的資訊
  • c 列出程序時,顯示每個程序真正的指令名稱,而不包含路徑,參數或常駐服務的標示
  • e 列出程序時,顯示每個程序所使用的環境變量。
  • f 用ASCII字符顯示樹狀結構,表達程序間的相互關係。
  • -H 顯示樹狀結構,表示程序間的相互關係。
  • -N 顯示所有的程序,除了執行ps指令終端機下的程序之外。
  • s 採用程序信號的格式顯示程序狀況。
  • S 列出程序時,包括已中斷的子程序資料。
  • -t<終端機編號> 指定終端機編號,並列出屬於該終端機的程序的狀況。
  • u 以用戶爲主的格式來顯示程序狀況。
  • x 顯示所有程序,不以終端機來區分。

常用的方法是
1. ps aux 顯示所有包含其他使用者的進程

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
使用者/pid/CPU佔用率/內存佔用率/VSZ虛擬內存佔用大小/RSS內存佔用大小/
TTY終端的次要裝置號碼/STAT進程狀態/START開始時間/TIME執行的時間/
COMMAND所執行的指令

進程狀態

  • D: 無法中斷的休眠狀態 (通常 IO 的進程)
  • R: 正在執行中
  • S: 靜止狀態
  • T: 暫停執行
  • Z: 不存在但暫時無法消除
  • W: 沒有足夠的記憶體分頁可分配
  • <: 高優先序的行程
  • N: 低優先序的行程
  • L: 有記憶體分頁分配並鎖在記憶體內 (實時系統或捱A I/O)

2. ps -ef 顯示所有進程,連帶命令行

UID   PID  PPID  C STIME TTY    TIME CMD
使用者/pid/父進程id/CPU佔用率/STIME開始時間/
TTY終端的次要裝置號碼/TIME執行的時間/COMMAND所執行的指令

2. 辨識文件類型 file命令

file [-bcLvz] [-f <名稱文件>] [-m <魔法數字文件>...][文件或目錄...]
  • -b  列出辨識結果時,不顯示文件名稱。
  • -c  詳細顯示指令執行過程,便於排錯或分析程序執行的情形。
  • -f<名稱文件>  指定名稱文件,其內容有一個或多個文件名稱時,讓file依序辨識這些文件,格式爲每列一個文件名稱。
  • -L  直接顯示符號連接所指向的文件的類別。
  • -m<魔法數字文件>  指定魔法數字文件。
  • -v  顯示版本信息。
  • -z  嘗試去解讀壓縮文件的內容。
  • [文件或目錄...] 要確定類型的文件列表,多個文件之間使用空格分開,可以使用shell通配符匹配多個文件。

3. 創建子目錄 mkdir

格式:mkdir [options] 目錄名

mkdir [-pmv] dirName
  • -p 確保目錄名稱存在,不存在的就建一個。
  • -v, --verbose:每次創建新目錄都顯示信息。
  • --version:顯示版本信息後離開。
  • -m, --mode:模式, 設定權限<模式>;,與chmod類似。

4. 可以指定文件中搜索特定的內容,並將含有這些內容的行標準輸出 grep

  • Global Regular Expression Print,表示全局正則表達式輸出
grep [-abcEFGhHilLnqrsvVwxy][-A<顯示行數>][-B<顯示行數>][-C<顯示行數>][-d<進行動作>][-e<範本樣式>][-f<範本文件>][--help][範本樣式][文件或目錄...]
  • [-abcEFGhHilLnqrsvVwxy] 無後接參數的參數。
  • -c:只輸出匹配行的計數。
  • -i:不區分大小寫(只適用於單字符)。
  • -h:查詢多文件時不顯示文件名。
  • -l:查詢多文件時只輸出包含匹配字符的文件名
  • -n:顯示匹配行及行號。
  • -s:不顯示不存在或無匹配文本的錯誤信息。
  • -v:顯示不包含匹配文本的所有行。
grep -n print *py
grep -v print *py

5. 在目錄中搜索文件命令 find

find path -option [-print]   [-exec -ok command] {} \;
find [path][options][expression]
  • path 指定目錄路徑,系統從這裏開始沿着目錄樹向下查找文件。它是一個路徑列表,相互用空格分離,如果不寫path,那麼默認爲當前目錄。
  • -depth:使用深度級別的查找過程方式,在某層指定目錄中優先查找文件內容。
  • -maxdepth levels:表示至多查找到開始目錄的第level層子目錄。level是一個非負數,如果level是0的話表示僅在當前目錄中查找。
  • -mindepth levels:表示至少查找到開始目錄的第level層子目錄。
  • -mount:不在其它文件系統(如Msdos、Vfat等)的目錄和文件中查找。
  • -version:打印版本。
  • -name name, -iname name : 文件名稱符合 name 的文件。iname 會忽略大小寫

6. 實時顯示進程動態 top

top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]

參數說明:

  • d : 改變顯示的更新速度,或是在交談式指令列( interactive command)按 s
  • q : 沒有任何延遲的顯示速度,如果使用者是有 superuser 的權限,則 top 將會以最高的優先序執行
  • c : 切換顯示模式,共有兩種模式,一是隻顯示執行檔的名稱,另一種是顯示完整的路徑與名稱S : 累積模式,會將己完成或消失的子行程 ( dead child process ) 的 CPU time 累積起來
  • s : 安全模式,將交談式指令取消, 避免潛在的危機
  • i : 不顯示任何閒置 (idle) 或無用 (zombie) 的行程
  • n : 更新的次數,完成後將會退出 top
  • b : 批次檔模式,搭配 “n” 參數一起使用,可以用來將 top 的結果輸出到檔案內

7. 查看磁盤

文件系統的整體磁盤使用量 df

df [-ahikHTm] [目錄或文件名]
  • 文件-h, --human-readable 使用人類可讀的格式(預設值是不加這個選項的…)
  • 文件-a, --all 包含所有的具有 0 Blocks 的文件系統

顯示指定的目錄或文件所佔用的磁盤空間 du

du [-abcDhHklmsSx][-L <符號連接>][-X <文件>][--block-size][--exclude=<目錄或文件>][--max-depth=<目錄層數>][--help][--version][目錄或文件
  • -c或–total 除了顯示個別目錄或文件的大小外,同時也顯示所有目錄或文件的總和。
  • -b或-bytes 顯示目錄或文件大小時,以byte爲單位。

創建和維護分區表 fdisk

root用戶可用。

fdisk [必要參數][選擇參數]

必要參數:

  • -l 列出素所有分區表
  • -u 與"-l"搭配使用,顯示分區數目
    選擇參數:
  • -s<分區編號> 指定分區
  • -v 版本信息

8.查看端口號

netstat –tunlp|grep 端口號
lsof -i:端口號

9. 刪除一個目錄下的txt文件

find . -name "*.txt" | xargs rm  -rf

10.顯示網絡狀態 netstat

11.顯示或配置網絡設備 ifconfig

ifconfig [網絡設備][down up -allmulti -arp -promisc][add<地址>][del<地址>][<hw<網絡設備類型><硬件地址>][io_addr<I/O地址>][irq<IRQ地址>][media<網絡媒介類型>][mem_start<內存地址>][metric<數目>][mtu<字節>][netmask<子網掩碼>][tunnel<地址>][-broadcast<地址>][-pointopoint<地址>][IP地址]
  • ifconfig eth0 down
  • ifconfig eth0 up 啓動/關閉指定顯卡

12. 文本分析工具 awk

awk [選項參數] 'script' var=value file(s)
awk [選項參數] -f scriptfile var=value file(s)
awk '{[pattern] action}' {filenames}   # 行匹配語句 awk '' 只能用單引號
awk '{print $1,$4}' log.txt # 每行按空格或TAB分割,輸出文本中的1、4項
awk -F  #-F相當於內置變量FS, 指定分割字符

13. contrab

  • 被用來提交和管理用戶的需要週期性執行的任務,當安裝完成操作系統後,默認會安裝此服務工具.
  • 並且會自動啓動crond進程,crond進程每分鐘會定期檢查是否有要執行的任務,如果有要執行的任務,則自動執行該任務。

14. uptime

查詢服務器已經運行多久

15. 查看內存使用量

free -h;
cat /proc/meminfo

16. 查看hostname

hostname;
uname -n

17. 控制文件如何被他人所調用chmod

  • u 表示該文件的擁有者,g 表示與該文件的擁有者屬於同一個羣體(group)者,o 表示其他以外的人,a 表示這三者皆是。
  • + 表示增加權限、- 表示取消權限、= 表示唯一設定權限。
  • r 表示可讀取,w 表示可寫入,x 表示可執行,X 表示只有當該文件是個子目錄或者該文件已經被設定過爲可執行。
#文件 file1.txt 設爲所有人皆可讀取
chmod ugo+r file1.txt = chmod a+r file1.txt 
#將文件 file1.txt 與 file2.txt 設爲該文件擁有者,與其所屬同一個羣體者可寫入,但其他以外的人則不可寫入 :
chmod ug+w,o-w file1.txt file2.txt 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章