我已經得到了OSX下面的shell腳本我想用它來糾正一個用戶目錄/修復權限,但我得到的錯誤:傻shell腳本錯誤
bash-3.2# sh fix-perms.sh
fix-perms.sh: line 23: syntax error near unexpected token `else'
fix-perms.sh: line 23: `else'
我的腳本:
#!/bin/sh
# Script fixes permissions in Users directory
# Set PATH as shortcut
#
PATH=/bin:/usr/bin:/sbin:/usr/sbin export PATH
# First verify volume is mounted before executing
if [ -d /Volumes/UserStorage ] ;
then
USERS=`mktemp -t users-XXXXX.log`
ls -1 /Volumes/UserStorage/Users > $USERS
for i in `cat $USERS`; do
chmod -R 700 /Volumes/UserStorage/Users/$i
find /Volumes/UserStorage/Users/$i -type d -exec chmod 701 {} \;
exit 0
else
echo Volume Not Mounted
exit 1
fi
這是愚蠢的/愚蠢的,我失蹤了,但如果我能看到它,我就會變得更糟!
感謝您的提示/洞察力提前。
Dan
啊是的,這是問題所在。但是如果完成循環而不打破它,我怎樣才能保持退出狀態? – Dan
@Doug:我不確定你的意思。 'exit 0'將終止整個腳本。我猜你想把'exit 0'_____ after _ done' ... – 2013-01-19 04:49:59
弗拉德,是的,回聲需要遵循'完成'。現在都好。謝謝你的幫助! – Dan