Linux常見的面試題

1.絕對路徑用什麼符號表示?當前目錄、上層目錄用什麼表示?主目錄用什麼表示?切換目錄用什麼命令?

絕對路徑:如/etc/init.d

當前目錄和上層目錄:./   ../

主目錄: ~/

切換目錄:cd

2.怎麼查看當前進程,怎麼執行退出,怎麼查看當前路徑?

查看當前進程:ps

執行退出:exit

查看當前路徑:pwd

3.怎麼清屏,怎麼退出當前命令,怎麼執行睡眠,怎麼查看當前用戶id,查看指定幫助用什麼命令?

清屏:clear

退出當前命令:ctrl+c   徹底退出

執行睡眠:Ctrl+z掛起當前進程 fg恢復後臺

查看當前用戶id:查看顯示目前登錄賬戶的uid和gid及所屬分組及用戶名

查看指定幫助:如 man adduser 這個很全,而且有例子:adduser-help這個告訴你一些常用參數:info adduser

4.LS命令執行什麼功能,可以帶哪些參數,有什麼區別?

ls執行的功能:列出指定目錄中的目錄,以及文件

哪些參數以及區別:  a 所有文件|詳情信息,包括大小字節數,可讀可寫可執行的權限等

5.建立軟鏈接(快捷方式),以及硬鏈接的命令

軟鏈接:In-s slink source

硬鏈接:In link source

6.目錄創建用什麼命令,創建文件用什麼命令,複製文件用什麼命令

創建目錄:mkdir

創建文件:典型的如touch,vi也可以創建文件,其實只要向一個不存在的文件輸出,都會創建文件

複製文件:cp

7.文件權限修改用什麼命令,格式是怎麼樣的

文件權限修改:chmod

格式如下:

$ chmod u+x file 給 file 的屬主增加執行權限
$ chmod 751 file 給 file 的屬主分配讀、寫、執行(7)的權限,給 file 的所在組分配讀、執行(5)的權限,給其他用戶分配執行(1)的權限
$ chmod u=rwx,g=rx,o=x file 上例的另一種形式
$ chmod =r file 爲所有用戶分配讀權限
$ chmod 444 file 同上例
$ chmod a-wx,a+r file同上例
$ chmod -R u+r directory 遞歸地給 directory 目錄下所有文件和子目錄的屬主分配讀的權限

8.查看文件內容有哪些命令可以使用

vi 文件名 #編輯方式查看,可修改
cat 文件名 #顯示全部文件內容
more 文件名 #分頁顯示文件內容
less 文件名 #與 more 相似,更好的是可以往前翻頁
tail 文件名 #僅查看尾部,還可以指定行數
head 文件名 #僅查看頭部,還可以指定行數

9.隨意寫文件命令,怎樣向屏幕輸出帶空格的字符串,你如“hello world”

寫文件命令:vi

向屏幕輸出帶空格的字符串:echo hello world

10.終端是哪個文件夾下的哪個文件,黑洞文件是哪個文件夾下的哪個命令

終端:/dev/tty

黑洞文件:/dev/null

11.移動文件用哪個命令,改名用哪個命令

mv    mv

12.複製文件用哪個命令,如果需要連同文件夾一塊刪除呢,刪除空文件夾用什麼命令

刪除文件的命令:rm

連同文件夾一塊刪除:rm -r

刪除空文件夾:rmdir

14.linux下有哪幾種可以使用通配符,分別代表什麼含義

“?”可替代單個字符

“*”可替代多個字符

“[charset]”可替代charset集中任何單個字符,如[a-z],[abABC]

15.用什麼命令對一個文件的內容進行統計(行號、單詞數、字節數)

wc命令 - c統計字節數 ,  - l 統計行數,  - w 統計字數

16.Grep命令有什麼用,如何忽略大小寫,如何查找不含該串的行

grep是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹配的行打印出來

grep[stringSTRING] filename        grep [^string] filename

17.Linux中進程有哪幾種狀態,在ps顯示的信息中,分別用什麼符號表示

1)不可中斷狀態:進程處於睡眠狀態,但是此刻進程是不可中斷的。不可中斷, 指進程不響應異步信號。

2)暫停狀態/跟蹤狀態:向進程發送一個 SIGSTOP 信號,它就會因響應該信號 而進入 TASK_STOPPED 狀態;當進程正在被跟蹤時,它處於 TASK_TRACED 這個特殊的狀態。“正在被跟蹤”指的是進程暫停下來,等待跟蹤它的進程對它進行操作。

3)就緒狀態:在 run_queue 隊列裏的狀態

4)運行狀態:在 run_queue 隊列裏的狀態

5)可中斷睡眠狀態:處於這個狀態的進程因爲等待某某事件的發生(比如等待 socket 連接、等待信號量),而被掛起

6)zomibie狀態(殭屍):父親沒有通過 wait 系列的系統調用會順便將子進程的屍體(task_struct)也釋放掉

7)退出狀態:

D 不可中斷 Uninterruptible(usually IO)
R 正在運行,或在隊列中的進程
S 處於休眠狀態
T 停止或被追蹤
Z 殭屍進程
W 進入內存交換(從內核 2.6 開始無效)
X 死掉的進程

18.怎麼使一個命令在後臺自動運行

一般都是使用&在命令結尾讓程序自動運行。(命令後可以不追加空格)

19.利用ps怎麼顯示所有進程,怎麼利用ps查看指定進程信息

ps -ef (system v 輸出)

ps -aux bsd 格式輸出

ps -ef | grep pid

20.那個命令專門用來查看後臺任務

job -l

21.把後臺任務調到前臺執行使用什麼命令,把停下的後臺任務在後臺執行起來用什麼命令

把後臺任務調到前臺執行:fg

把停下的後臺任務在後臺執行起來:bg

22.終止進程用什麼命令,用什麼參數

kill[-s<信息名稱或者編號>][程序] 或 kill [-l <信息編號>]

例如:kill -9 pid 

23.搜索文件用什麼命令,格式是怎樣的

find<指定目錄><指定條件><指定動作>

whereis 加參數與文件名

locate只加文件名

find直接搜索磁盤,較慢

find/-name "string"

24.查看當前誰在使用該主機用什麼命令,查找自己所在的終端信息用什麼命令

查找自己所在的終端信息:who am i

查看當前誰在使用該主機:who

25.使用什麼命令查看用過的命令列表

history

26.使用什麼命令查看磁盤使用空間,空閒空間

df -hl

文件系統 容量 已用 可用 已用% 掛載點
Filesystem Size Used Avail Use% Mounted on /dev/hda2 45G 19G 24G 44% /
/dev/hda1 494M 19M 450M 4% /boot

27.使用什麼命令查看網絡是否連通

netstat

28.查看各類環境變量用什麼命令

env

查看某個,如home : env $HOME

29.通過什麼命令指定命令提示符

\u:顯示當前用戶賬號

\h:顯示當前主機名

\W:只顯示當前路徑最後一個目錄

\w:顯示當前絕對路徑(當前用戶目錄會以~代替)

$PWD:顯示當前全路徑

\$:顯示命令行’$'或者’#'符號

\#:下達的第幾個命令

\d:代表日期,格式爲week day month date,例如:"MonAug1"

\t:顯示時間爲24小時格式,如:HH:MM:SS

\T:顯示時間爲12小時格式

\A:顯示時間爲24小時格式:HH:MM

\v:BASH的版本信息 如export PS1=’[\u@\h\w\#]\$‘

30.通過什麼命令查找執行命令

which 只能查可執行文件

whereis 只能查二進制文件、說明文檔,源文件等

31.怎麼對命令進行取別名

alias la="Is-a"

32.du和df的區別

du:顯示目錄或文件的大小

df:顯示每個<文件>所在文件系統的信息,默認是顯示所有文件系統。

(文件系統分配其中的一些磁盤塊用來記錄它自身的一些數據,如 i 節點,磁盤分佈圖,間接塊,超級塊等。這些數據對大多數用戶級的程序來說是不可見的,通常稱爲 Meta Data。) du 命令是用戶級的程序,它不考慮 Meta Data,而 df 命令則查看文件系統的磁盤分配圖並考慮 Meta Data。
df 命令獲得真正的文件系統數據,而 du 命令只查看文件系統的部分情況。

33.awk 詳解

awk '{pattern + action}' {filenames}
#cat /etc/passwd |awk -F ':' '{print $1"\t"$7}' //-F 的意思是以':'分隔 root /bin/bash
daemon /bin/sh 搜索/etc/passwd 有 root 關鍵字的所有行

#awk -F: '/root/' /etc/passwd root:x:0:0:root:/root:/bin/bash

34.當你需要給命令綁定一個宏或者按鍵的時候,應該怎麼做呢?

可以使用bind命令,bind可以很方便地在shell中實現宏或按鍵的綁定。

在進行按鍵綁定的時候,我們需要先獲取到綁定按鍵對應的字符序列。

比如獲取F12的字符序列獲取方法如下:先按下Ctrl+V,然後按下F12 .我們就可以得到F12的字符序列 ^[[24~。

接着使用bind進行綁定。

[root@localhost ~]# bind ‘”\e[24~":"date"'

注意:相同的按鍵在不同的終端或終端模擬器下可能會產生不同的字符序列。

【附】也可以使用showkey -a命令查看按鍵對應的字符序列。

35.如果一個linux新手想要知道當前系統支持的所有命令的列表,他需要怎麼做?

使用命令compgen -c,可以打印出所有支持的命令列表。

[root@localhost ~]$ compgen -c

l.

ll

ls

which

if

then

else

elif

fi

case

esac

for

select

while

until

do

done

36.如果你的助手想要打印出當前的目錄棧,你會建議他怎麼做?

使用Linux 命令dirs可以將當前的目錄棧打印出來。

[root@localhost ~]# dirs

/usr/share/X11

【附】:目錄棧通過pushd popd 來操作。

37.你的系統目前有許多正在運行的任務,在不重啓機器的條件下,有什麼方法可以把所有正在運行的進程移除呢?

使用linux命令 ’disown -r ’可以將所有正在運行的進程移除。

38.bash shell 中的hash 命令有什麼作用?

linux命令’hash’管理着一個內置的哈希表,記錄了已執行過的命令的完整路徑, 用該命令可以打印出你所使用過的命令以及執行的次數。

[root@localhost ~]# hash

hits command

2 /bin/ls

2 /bin/su

39.哪一個bash內置命令能夠進行數學運算

bash shell 的內置命令let 可以進行整型數的數學運算。

#! /bin/bash


let c=a+b

40.怎樣一頁一頁地查看一個大文件的內容呢?

通過管道將命令”cat file_name.txt” 和 ’more’ 連接在一起可以實現這個需要.

[root@localhost ~]# cat file_name.txt | more

41.數據字典屬於哪一個用戶的?

數據字典是屬於’SYS’用戶的,用戶‘SYS’ 和 ’SYSEM’是由系統默認自動創建的

42.怎樣查看一個linux命令的概要與用法?假設你在/bin目錄中偶然看到一個你從沒見過的的命令,怎樣才能知道它的作用和用法呢?

使用命令whatis 可以先出顯示出這個命令的用法簡要,比如,你可以使用whatis zcat 去查看‘zcat’的介紹以及使用簡要。

[root@localhost ~]# whatis zcat

zcat [gzip] (1) – compress or expand files

43.使用哪一個命令可以查看自己文件系統的磁盤空間配額呢?

使用命令repquota 能夠顯示出一個文件系統的配額信息

【附】只有root用戶才能夠查看其它用戶的配額。

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