0

これは私のスクリプトの例です。実行後に終了するにはどうすればよいですか。ループします。

#!/bin/bash
#Checks root permission
if [ $(id -u) != "0" ]; then
   echo "You must be the superuser to run this script" >&2
   su -c "$0 $@"
fi

echo "welcome to script"
cd /var/app
cp index.html index10.html

su john -c 'command1 && command2'

if [ $? -eq 0 ];then
cp index10.html index.html
echo "script exit"
else
echo "error"
fi
exit 1

スクリプトがユーザーjohnで実行されるときだと思います。su -c "$ 0$@"はrootで実行します。そして、suコマンドが実行されると..スクリプトが続行されます。実行せずにスクリプトを制限し、echo"scriptexit"で終了する方法はありますか。つまり、su -c "$ 0 $ @"を削除せずに?スクリプトがrootユーザーとして実行されれば、問題はありません。

4

1 に答える 1

0

exit最初のsuコマンドの後 (ifブロック内) に入力します。

于 2012-05-14T13:15:08.607 に答える