我有我的腳本顯示用戶的變量:如何添加IF ELSE到Linux可變
OWNER=$(grep 1000:1000: /etc/passwd|cut -f1 -d':')
輸出將是這樣的:
joe
這是正常的精安裝操作系統的服務器&用戶在安裝期間已安裝。我遇到了沒有初始用戶的vps問題。我想補充的變量如果爲空,則輸出應該是「根」,但我不知道從哪裏開始..
三江源
我有我的腳本顯示用戶的變量:如何添加IF ELSE到Linux可變
OWNER=$(grep 1000:1000: /etc/passwd|cut -f1 -d':')
輸出將是這樣的:
joe
這是正常的精安裝操作系統的服務器&用戶在安裝期間已安裝。我遇到了沒有初始用戶的vps問題。我想補充的變量如果爲空,則輸出應該是「根」,但我不知道從哪裏開始..
三江源
爲什麼不檢查grep
命令的返回值? 如果以root用戶身份返回1
,否則 - cut
其結果並使用它。
LINE="`grep 1000:1000: /etc/passwd`"
[ $? -eq 0 ] && OWNER="`echo "$LINE"|cut -f1 -d":"`" || OWNER=root
像這樣的事情
[[ $OWNER == "" ]] && OWNER="root"
或
if [[ $OWNER == "" ]]; then
OWNER="root"
fi
如果你不想奇怪的擴展,你應該引用$ USER和$ LINE(例如,$ USER將永遠被回顯爲在單詞標記之間有1個空格,並且沒有前導或尾隨空格,不管它從命令輸出中有多少) – BroSlow
@BroSlow感謝您的評論。現在修復。 – Michael
Thankyou,完美的工作..完整的表達式可以在一行上,還是必須在2行上? – linuxnoob