如何在 Mac (10.7.4) 上執行 shell 腳本來自動安裝更新?

如何在 Mac (10.7.4) 上執行 shell 腳本來自動安裝更新?

我正在嘗試運行這個 shell 腳本,它應該執行以下操作:

  • 該腳本使用 OSX 上的 softwareupdate 程式自動檢查更新並安裝它們。它還將所有更新記錄到 /Library/Management/update.log 檔案中。

  • 它首先檢查是否有任何使用者登錄,如果有,則將使用者記錄到日誌檔案中並結束。

  • 如果沒有使用者登錄,它將更新電腦、記錄資訊並重新啟動。

我不斷收到此錯誤:

update.sh: line 9: syntax error near unexpected token `fi'

update.sh: line 9: `fi'

這是腳本:

#!/bin/sh    
users=$(users)
users1=$(echo "${#users}")
if [ $users1 -lt 1 ]    
then   
date >> /Library/Management/update.log && /usr/sbin/softwareupdate -aiv >> 
/Library/Management/update.log && /sbin/reboot    
else    
date >> /Library/Management/update.log && echo "Logged in users: " >> 
/Library/Management/update.log && echo $(users) >> /Library/Management/update.log    
fi

有任何想法嗎?

答案1

以 開頭的行date缺少行繼續符。將它們替換為如下內容:

date >> /Library/Management/update.log && /usr/sbin/softwareupdate -aiv >> \
/Library/Management/update.log && /sbin/reboot    

相關內容