シェルスクリプトを使用して、プロジェクトのサブフォルダーを含む新しいフォルダーを作成するAutomatorアプリケーションを作成しました。アプリケーションは最初にプロジェクト名と場所(ディレクトリ)を尋ね、一度作成されると、新しく作成されたプロジェクトフォルダが開きます。
たとえば、
これまでは期待どおりに機能しましたが、一部のファイルをサブフォルダに自動的に追加しようとしましたが、フリーズして解決策を見つけることができませんでした。
既定では、他のフォルダのファイルを新しく作成されたサブフォルダの1つにコピーしようとします(主に)、次の2つのエラーが発生します。
「シェルスクリプトの実行」操作でエラーが発生しました:「使用法:cp [-R [-H | -L | -P]] [-fi | -P]] -n] [-apvXc]ソースファイルターゲットファイルcp [ - R [-H | -L | -P]] [-fi -P]] -n] [-apvXc] ソースファイル... ターゲットディレクトリ" 使用法: cp [-R | -L | - P]] [-fi | -P]] -n] [-apvXc] ソースファイル ターゲットファイル cp [-R [-H | -P]] [-fi | apvXc]ソースファイル...ターゲットディレクトリ
「シェルスクリプトの実行」操作で「cp:/path/to/sourcefile/file.pdf:そのファイルまたはディレクトリがありません」というエラーが発生しました。
これが私が持っているものです:
mkdir "$1/$2"
mkdir "$1/$2/Guides_and_Bulletins"
mkdir "$1/$2/Pictures"
mkdir "$1/$2/Schematics"
mkdir "$1/$2/Schematics/Calculator"
mkdir "$1/$2/Schematics/As_built"
mkdir "$1/$2/Site_Docs"
cp "/path/to/sourcefile/file.pdf" "/$1/$2/Guides_and_Bulletins/file.pdf"
この例では、上記の操作で特定の場所で新しく作成されたGuides_and_Bulletinsサブフォルダにfile.pdfをコピーしようとしましたが、当然動作しませんでした。
どんな助けでも大変感謝します!ありがとう
注:もちろん、パスをcpに変更しています。"/パス/to/sourcefile/file.pdf"「$1/$2/Guides_and_Bulletins/」を正しい場所に
答え1
ディレクトリを作成しました。
mkdir "$1/$2"
ただし、ファイルを別のディレクトリにコピーしようとしています。
cp "/path/to/sourcefile/file.pdf" "/$1/$2/Guides_and_Bulletins/file.pdf"
努力する:
cp "/path/to/sourcefile/file.pdf" "$1/$2/Guides_and_Bulletins/file.pdf"
また、スクリプトを一部簡素化することもできます。
mkdir -p "$1/$2/Guides_and_Bulletins" \
"$1/$2/Pictures" \
"$1/$2/Schematics" \
"$1/$2/Schematics/Calculator" \
"$1/$2/Schematics/As_built" \
"$1/$2/Site_Docs"
cp "/path/to/sourcefile/file.pdf" "$1/$2/Guides_and_Bulletins/"