Как запустить скрипт оболочки на Mac (10.7.4) для автоматической установки обновлений?

Как запустить скрипт оболочки на Mac (10.7.4) для автоматической установки обновлений?

Я пытаюсь запустить этот скрипт оболочки, который должен делать следующее:

  • Этот скрипт использует программу softwareupdate на OSX для автоматической проверки обновлений и их установки. Он также регистрирует все обновления в файле /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    

Связанный контент