画像でいっぱいのフォルダがあり、applescript を使用してすべての画像名のテキスト ファイルを作成する必要があります。Applescript を使用して、約 10k あるすべてのファイル名を読み取り、これをテキスト ファイルに出力する方法はありますか? どんな助けでも素晴らしいでしょう!読んでくれてありがとう。
3 に答える
なぜターミナルからそれをしないのですか?
ls > pix.txt
アクセスするためにファイルを開く前に、ファイルを作成する必要はありません。あなたはただすることができます
set theFile to (theFolder & "thefile.txt")as string
set openFile to open for access theFile with write permission
もちろん、ファイルが存在する場合は上書きされます。あなたが使用することができます
set thefile to choose file name with prompt "name the output file"
「ファイル名を選択」は、ファイルを作成せずにパスを返し、ファイルが存在する場合は上書きするかどうかをユーザーに尋ねます。
「return」を使用して改行を入れることもできます。これにより、コードが少しきれいになります。
write fileName & return to openFile
もちろん、シンプルでエレガントな方法が必要な場合は、コマンドが必要な場所です。
ls>thefile.txt
この例では、'>' は ls (ディレクトリのリスト) コマンドからの出力をファイルに書き込みます。これはapplescript内から実行できます
set thePosixDrectory to posix path of file thedirectory of app "Finder"
set theposixResults to posix path of file theresultfile of app "Finder"
do shell script ("ls \"" & thePosixDrectory & "\">\"" & theposixResults & "\"")as string
posix パスのものは、applescript スタイルdirectory:paths:to your:files
を unix スタイルに変えること/directory/paths/to\ your/files
です。
実際に実行されるシェル スクリプトは次のようになります。
ls "/some/directory/path/">"/some/file/path.txt"
引用符は、スペースやその他のファンキーな文字がシェル スクリプトを混乱させないようにするためにあります。AppleScript で引用符が引用符として読み取られるのを防ぐために、バックスラッシュを使用してそれらを「エスケープ」しました。次のように、コードをより読みやすくするために、一重引用符を使用することもできます。
do shell script ("ls '" & thePosixDrectory & "'>'" & theposixResults & "'") as string
次のようにシェルに表示されます
ls '/some/directory/path/'>'/some/file/path.txt'
HTH