14

別のユーザーのホーム ディレクトリにあるディレクトリを確認する必要があります。通常は sudo を実行しますが、それによって別のプロセスがフォークされ、環境も失われます。

たとえば、私は持っています:

if [[ -d "/home/otheruser/svn" ]];
then
   echo "SVN exists"
else
   echo "SVN does not exist"
fi

root 権限で実行するには、テスト条件が必要です。

4

2 に答える 2

37
if sudo test -d "/home/otheruser/svn"; then
于 2012-05-17T18:17:52.860 に答える
11

サブシェルで実行する必要があります。例:

if sudo bash -c '[[ -d "/home/otheruser/svn" ]]'
then
  echo "SVN exists"
else
  echo "SVN does not exist"
fi
于 2012-05-17T18:17:05.233 に答える