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。