What command will generate a list of user names from /etc/passwd along with their login shell?



A.

column -s : 1,7 /etc/passwd

B.

chop -c 1,7 /etc/passwd

C.

colrm 1,7 /etc/passwd

D.

cut -d: -f1,7 /etc/passwd

題解

選項A,「column」指令可以將傳入的文字以多個欄位的方式分隔。舉例來說:

id|name|score
1|Peter|62
2|David|96
3|Eric|77

經過「column -s "|" -t」指令處理後,變成:

id  name   score
1   Peter  62
2   David  96
3   Eric   77

選項B,沒有「chop」指令。

選項C,「colrm」指令可以移除所有列的指定行數範圍中的文字。舉例來說:

id  name   score
1   Peter  62
2   David  96
3   Eric   77

經過「colrm 5 11」指令處理後,變成:

id  score
1   62
2   96
3   77

選項D,「cut」指令可以將傳入的文字擷取一段下來保存。舉例來說:

id|name|score
1|Peter|62
2|David|96
3|Eric|77

經過「cut -f 1,3 -d '|'」指令處理後,變成:

id|score
1|62
2|96
3|77

「/etc/passwd」檔案中,以「:」字元來分隔欄位,第一欄為使用者名稱,第七欄為使用者登入使用的shell。選項D的指令符合題意,因此答案是選項D。