20條Linux命令面試問答
問:1 如何查看當前的Linux伺服器的運行級別?
答: 'who -r' 和 'runlevel' 命令可以用來查看當前的Linux伺服器的運行級別。
問:2 如何查看Linux的默認網關?
答: 用 "route -n" 和 "netstat -nr" 命令,我們可以查看默認網關。除了默認的網關信息,這兩個命令還可以顯示當前的路由表。
問:3 如何在Linux上重建初始化內存檔鏡像文件?
答: 在CentOS 5.X / RHEL 5.X中,可以用mkinitrd命令來創建初始化內存檔文件,舉例如下:
# mkinitrd -f -v /boot/initrd-$(uname -r).img $(uname -r)
如果你想要給特定的內核版本創建初始化內存檔,你就用所需的內核名替換掉 'uname -r' 。
在CentOS 6.X / RHEL 6.X中,則用dracut命令來創建初始化內存檔文件,舉例如下:
# dracut -f
以上命令能給當前的系統版本創建初始化內存檔,給特定的內核版本重建初始化內存檔文件則使用以下命令:
# dracut -f initramfs-2.x.xx-xx.el6.x86_64.img 2.x.xx-xx.el6.x86_64
問:4 cpio命令是什麼?
答: cpio就是複製入和複製出的意思。cpio可以向一個歸檔文件(或單個文件)複製文件、列表,還可以從中提取文件。
問:5 patch命令是什麼?如何使用?
答: 顧名思義,patch命令就是用來將修改(或補丁)寫進文本文件里。patch命令通常是接收diff的輸出並把文件的舊版本轉換為新版本。舉個例子,Linux內核源代碼由百萬行代碼文件構成,所以無論何時,任何代碼貢獻者貢獻出代碼,只需發送改動的部分而不是整個源代碼,然後接收者用patch命令將改動寫進原始的源代碼里。
創建一個diff文件給patch使用,
# diff -Naur old_file new_file > diff_file
舊文件和新文件要麼都是單個的文件要麼都是包含文件的目錄,-r參數支持目錄樹遞歸。
一旦diff文件創建好,我們就能在舊的文件上打上補丁,把它變成新文件:
# patch < diff_file
問:6 aspell有什麼用 ?
答: 顧名思義,aspell就是Linux操作系統上的一款互動式拼寫檢查器。aspell命令繼任了更早的一個名為ispell的程序,並且作為一款免費替代品 ,最重要的是它非常好用。當aspell程序主要被其它一些需要拼寫檢查能力的程序所使用的時候,在命令行中作為一個獨立運行的工具的它也能十分有效。
問:7 如何從命令行查看域SPF記錄?
答: 我們可以用dig命令來查看域SPF記錄。舉例如下:
linuxtechi@localhost:~$ dig -t TXT google.com
問:8 如何識別Linux系統中指定文件(/etc/fstab)的關聯包?
答:
# rpm -qf /etc/fstab
以上命令能列出提供"/etc/fstab"這個文件的包。
問:9 哪條命令用來查看bond0的狀態?
答:
cat /proc/net/bonding/bond0
問:10 Linux系統中的/proc文件系統有什麼用?
答: /proc文件系統是一個基於內存的文件系統,其維護著關於當前正在運行的內核狀態信息,其中包括CPU、內存、分區劃分、I/O地址、直接內存訪問通道和正在運行的進程。這個文件系統所代表的並不是各種實際存儲信息的文件,它們指向的是內存里的信息。/proc文件系統是由系統自動維護的。
問:11 如何在/usr目錄下找出大小超過10MB的文件?
答:
# find /usr -size +10M
問:12 如何在/home目錄下找出120天之前被修改過的文件?
答:
# find /home -mtime +120
問:13 如何在/var目錄下找出90天之內未被訪問過的文件?
答:
# find /var ! -atime -90
問:14 在整個目錄樹下查找文件"core",如發現則無需提示直接刪除它們。
答:
# find / -name core -exec rm {} ;
問:15 strings命令有什麼作用?
答: strings命令用來提取和顯示非文本文件中的文本字元串。(LCTT 譯註:當用來分析你系統上莫名其妙出現的二進位程序時,可以從中找到可疑的文件訪問,對於追查入侵有用處)
問:16 tee 過濾器有什麼作用 ?
答: tee 過濾器用來向多個目標發送輸出內容。如果用於管道的話,它可以將輸出複製一份到一個文件,並複製另外一份到屏幕上(或一些其它程序)。
linuxtechi@localhost:~$ ll /etc | nl | tee /tmp/ll.out
在以上例子中,從ll輸出可以捕獲到 /tmp/ll.out 文件中,並且同樣在屏幕上顯示了出來。
問:17 export PS1 = "$LOGNAME@hostname:$PWD:" 這條命令是在做什麼?
答: 這條export命令會更改登錄提示符來顯示用戶名、本機名和當前工作目錄。
問:18 ll | awk '{print $3,"owns",$9}' 這條命令是在做什麼?
答: 這條ll命令會顯示這些文件的文件名和它們的擁有者。
問:19 :Linux中的at命令有什麼用?
答: at命令用來安排一個程序在未來的做一次一次性執行。所有提交的任務都被放在 /var/spool/at 目錄下並且到了執行時間的時候通過atd守護進程來執行。
問:20 linux中lspci命令的作用是什麼?
答: lspci命令用來顯示你的系統上PCI匯流排和附加設備的信息。指定-v,-vv或-vvv來獲取越來越詳細的輸出,加上-r參數的話,命令的輸出則會更具有易讀性。
via: http://www.linuxtechi.com/20-linux-commands-interview-questions-answers/
作者:Pradeep Kumar 譯者:ZTinoZ 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive