2

特定のファイルとディレクトリを削除し、新しいファイルとディレクトリをその場所にコピーする単純な bash スクリプトを OS X で実行しています。1 つの Mac .app ディレクトリにスペースが含まれており、スクリプトを実行すると「そのようなファイルまたはディレクトリはありません」というエラーが表示されます。

関連するコードは次のとおりです。かなりの量が切り取られているため、これらを別の方法でハードコーディングすることはできません (変数はそのまま分割する必要があります)。

CP="cp -Rf"

INSTALL_DIR="/Applications/"

APP="The App.app"

NEWAPP="$HOME/Downloads/The App.app"

$CP "$NEWAPP " "$INSTALL_DIR$NEWAPP"

The\ App.app一重引用符、二重引用符、および二重エスケープを試みるだけでなく、うまくいかずにエスケープを試みましたが、何も機能しませんでした。これを行う簡単な方法があると思います。

ご協力いただきありがとうございます。

4

2 に答える 2

5

そこに余分なスペースがあります。

"$NEWAPP"

于 2011-07-27T17:44:50.770 に答える
-2

最後の行全体を引用符で囲みます。

"$CP $NEWAPP $INSTALL_DIR$NEWAPP"

ここで引用符を開いたり閉じたりする必要はありません。CP にはスペースが含まれているため、$CP を引用符で囲む必要があります。

于 2011-07-27T17:46:09.030 に答える