applescriptを使用して自動化したい次のターミナルコマンドがあります。また、最初にコマンドを適用するフォルダーにディレクトリをcdするコマンドが必要です。.pdfファイルを保持するフォルダーにcdした後。このコードは、ファイル名の最初の文字を調べ、それに基づいてファイルをファイルの最初の文字に対応するアルファベットフォルダーに並べ替えます。
for x in `ls -1 | sed -e 's/^\(.\).*/\1/' | sort -u`; do
mv -i ${x}?* $x
done
どうすればこれを行うことができますか?私はこれの初心者です。どんな洞察も大歓迎です。私はApplescriptを学びたいと思っていますが、これをどこから実装し始めればよいのかわかりません。
ありがとう
これを試して:
choose folder with prompt "Select the original folder" default location (path to documents folder)
set folderPath to contents of result
set folderPath to POSIX path of folderPath
do shell script "for x in `ls -1 " & folderPath & " | sed -e 's/^\\(.\\).*/\\1/' | sort -u`; do destination=$(echo $x | tr '[:lower:]' '[:upper:]'); mkdir " & folderPath & "$destination; mv -i " & folderPath & "${x}?* " & folderPath & "$destination/; done"
これは無視してい大文字を、すなわち:すべてのファイルが始まるa
とA
フォルダに移動されますA/
編集済み1:宛先フォルダーの作成を試みますが、既に存在する場合は、サイレントに失敗し、ファイルをそのフォルダーに移動します。
編集2:デフォルトでDropboxフォルダを開きます:
set dropboxFolder to (POSIX path of (path to home folder) & "Dropbox")
choose folder with prompt "Select the original folder" default location (POSIX file dropboxFolder as alias)
編集3:最終的なスクリプト:
set dropboxFolder to (POSIX path of (path to home folder) & "Dropbox")
choose folder with prompt "Select the original folder" default location (POSIX file dropboxFolder as alias)
set folderPath to contents of result
set folderPath to POSIX path of folderPath
do shell script "for x in `ls -1 " & folderPath & " | sed -e 's/^\\(.\\).*/\\1/' | sort -u`; do destination=$(echo $x | tr '[:lower:]' '[:upper:]'); mkdir " & folderPath & "$destination; mv -i " & folderPath & "${x}?* " & folderPath & "$destination/; done"
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加