我對bash shell腳本非常陌生,我有一項任務要求我閱讀我的linux安裝副本的最後一行(即管理員文件夾)passwd文件,其中包含用戶名,真實姓名,主目錄和登錄shell。我已經嘗試了讀命令,但它繼續輸出整個文件,而不是僅僅最後一行,甚至所以我需要能夠輸入在部分,例如:echo $Username
將輸出管理員或回聲$Realname
wold ouptut用戶真實姓名。我也試過sed,但我得到了「不能讀取,沒有這樣的文件或目錄錯誤」如何在bash shell中打印passwd的最後一行
編輯:在收到我的教授的電子郵件後,我必須使用read命令從passwd文件中獲取信息。但是,您的回答在幫助我理解我目前的行爲方面非常有用。謝謝!
Here is a link to my list of objectives in this script
,這裏是我寫的是返回整個passwd文件中的代碼:
file="/home/Admin/passwd"
while read -r f1 f2 f3 f4 f5 f6 f7
do
echo "Username: $f1, Realname: $f2, Homedir: $f3, loginshell: $f4 "
done < "$file"
任何幫助,將不勝感激,不知何故,我覺得我過分解讀說明但我想一些其他意見,謝謝!
因爲這是一個任務我不會給你一個完整的答案,但看尾部命令的手冊頁。 –
同時考慮使用IFS爲讀命令選擇一個字段分隔符,以便字段正確拆分。找出密碼文件使用的字段分隔符。 – Scrutinizer
+1給Scrutinizer的評論:什麼是字段分隔符? –