• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Applescriptでファイル名の一部を置換)

Applescriptでファイル名の一部を置換

このQ&Aのポイント
  • Applescriptを使用して、ファイル名の一部を置換する方法について調査しました。
  • 現在業務で使用しているアプリケーションでPDFファイルの書き出し作業を行なっていますが、ファイル名の後ろにページ番号が自動的に入るため、その部分を特定の文字に置き換えたいと考えています。
  • 調査した結果、Applescriptを使用してファイル名の一部を置換することが可能ですが、簡単な変換作業であれば他の方法もあります。

質問者が選んだベストアンサー

  • ベストアンサー
  • mamegohan
  • ベストアンサー率54% (37/68)
回答No.3

NameChanger(フリーソフト) 1.こちらからダウンロード http://namechanger.en.softonic.com/mac/download 2.NameChangerを立ち上げる 3.変換したいファイルをすべて選択し、NameChangerのウインドウにドラッグ 4.変換様式は「Sequence」を選ぶ 5.変換後のファイルを001、002、のように3桁にしたければ、 Number of Digitsを「003」にし、starting at を「1」にする 6.Locationは「Replace Entire Filename」にする 7.ウインドウの右側に変換後の名前が表示されているので、これでOKならRenameの三角ボタンを押す。  (この状態では、ファイル名は001、002、003、、となっている) 8.NameChangerを一旦終了させ、再度立ち上げる 9.先ほど変換したファイル(001・002・003・・・)をすべて選択し、NameChangerのウインドウにドラッグ 10.変換様式を「Prepend」にし、New Textに「サンプルP」と入力し、良ければRenameボタンをクリック (この状態では、ファイル名はサンプルP001、サンプルP002、サンプルP003、、となっている) 11.変換様式を「Append」にし、New Text に「.pdf」と入力し、良ければRenameボタンをクリック (この状態で、ファイル名はサンプルP001.pdf、サンプルP002.pdf、、、となっている) 以上で目的のファイルのできあがり。 ワイルドカードを使った、もっとスマートな方法もあるはずですが、ご自分でいろいろやってみてください。このソフトを使えば、たいていのファイルネーム変換ができます。

af_toybox
質問者

お礼

お返事ありがとうございます。 こんな便利なアプリをご紹介いただき、ありがとうございます。 試してみたところ、確かに思い通りにファイル名を変換することができました。 このアプリでもう少しテストしてみたいと思います。 本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (5)

  • namoroka
  • ベストアンサー率42% (6/14)
回答No.6

No.4です。僕の場合は10.7.5で正常に動作しています。記憶が曖昧ですが、オリジナルのコードをコピー、スクリプトエディター2.4.3にペーストして使っているのかもしれません。

af_toybox
質問者

お礼

ありがとうございます。 動作確認できました。 再度確認したところ、ご指定いただいた方法で文字列を置換えすることができました。 複数の条件で置き換えを行おうとした場合、 一度に全てのファイルを変換することはできませんが、Scriptの組み換えで変換できるかもしれません。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • toast5
  • ベストアンサー率37% (239/638)
回答No.5

「NameChanger」は何度も使ってみたことあるのですが、 いいソフトだということをNo.3さんのおかげで初めて認識しました。 NameChanger で中央のポップアップメニューのところを 「Regular Expression」にすれば、1の方法で一発でいけますね。 1と違うのは置換文字列を「P0バックスラッシュ1」ではなく、 「P0$1」と、ドル記号を使うところです。

全文を見る
すると、全ての回答が全文表示されます。
  • namoroka
  • ベストアンサー率42% (6/14)
回答No.4

これを使ってみてはどうでしょう。  http://72.way-nifty.com/blog/2011/03/applescript-1e9.html 検索したい文字列を[1-1]、置換したい文字列をP01にすればできそうです。ただし、 [1-1], [2-2], ・・・をそれぞれ変換しないといけないこと、[1-1]の文字列を含むファイルがたくさんある時は時間がかかります。  

af_toybox
質問者

お礼

早々のご返答ありがとうございます。 一度試してみたのですが、ご紹介いただいたスクリプトは「OS10.5.8」「スクリプトエディタ 2.2.1」で作られたものであった為、私の制作環境OS10.7では動作しませんでした。 今後もいろいろと試してみます。 ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。
  • toast5
  • ベストアンサー率37% (239/638)
回答No.2

投稿したらウチの環境ではバックスラッシュがすべて円記号になりました(Safari では)。 やってみるなら円記号をすべて半角バックスラッシュにしてください。 いや、この辺も環境によるのかな。よく理解できてないのですが。

全文を見る
すると、全ての回答が全文表示されます。
  • toast5
  • ベストアンサー率37% (239/638)
回答No.1

挙げられた例だけであれば、 「Name Mangler.app」をダウンロードして起動し、 http://manytricks.com/namemangler/ 出てくるウィンドウの 左上のポップアップメニューを「Find and Replace」にして、 「Drop files and folders here」にファイルをまとめてドロップ、 右のスペースの「Find」の欄に「\[(\d)\-\d\]」と入力、 「Replace」の欄に「P0\1」と入力、 「Query is regular expression」にチェックして「Rename」ボタンを押せばできます。 AppleScriptでやる方法は知らないのですが、 AppleScriptは正規表現に対応してない、とどこかで読んだ記憶があります。 以上の説明でわからない点(例えば正規表現ってなんだよ、とか)があれば、 あっさり締め切らずにお礼欄で質問していただければ、 お急ぎでなければどこまででもつき合います。 ちなみに Name Mangler はフリーウェアではありません。 フリーウェアのリネームソフトとしては日本発の「Shupapan」が有名ですが、 僕はいまのところ「Shupapan」の採用している正規表現が理解できていません。

af_toybox
質問者

お礼

ご丁寧にありがとうございます。 テストしてみたところ、ご指定いただいた方法で変換することができました。 現在無料版でのテストとなりますので、一度に全てのファイルは変換できませんが、検討していきたいと思います。 大変参考になりました。 ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • applescriptでファイルをコピー

    様々な場所にあるファイルをapplescriptでフルパスを集めるところまでできました。 "/home/documents/xxxxx"_"/home/pic/yyyyy"_ のような形になっています。アンダーバーは半角スペース このコピーしたいファイルも10や20ならターミナルにそのままコピーペーストして cp "/home/documents/xxxxx"_"/home/pic/yyyyy"_ ~/test のようにすれば順番にコピーしてくれるのでいいのですが 数が多くなればターミナルが受け付けてくれなくなります。 分割してコピーペーストをしてもいいのですが、 なんとかこのコピーまでの処理をapplescriptでできないかなと思いまして質問をさせていただきました。 多いときには数百のファイルになるので、繰り返し処理だと不可がかかりすぎるのではないかと思いループは使っていません 同時にいくつものファイルを処理しそうで怖いのと、数が少ない状態で試しても分からないので。 あと1つのファイルのサイズは1M以下から大きくて15Mくらいです。 できるだけ負荷をかけないようにコピーする方法はありますか? applescript内で変数にこのフルパスが入っているので、automatorかapplescriptの処理だと助かります。 よろしくお願いします。

    • ベストアンサー
    • Mac
  • 別フォルダ内のファイル名をもとにすることができるリネームソフト

    質問失礼いたします。 例えば、「A」フォルダ内に「P1010003」「P1010014」「P1010020」という画像ファイルがあります。 そして「B」フォルダ内に「P10100010」「P1010016」「P1010030」という画像ファイルがあります。 「A」フォルダ内のファイル名を基にして「B」フォルダ内のファイル名を「P1010003a」「P1010014a」「P1010020a」というふうに一括でしたいのです。(ちなみに「A」「B」フォルダ内のファイル数は同じ数です) どなたか、一括でリネームできる方法、もしくはリネームソフトをお教えいただけないでしょうか? 各フォルダには200数以上あり、今までは「フリーマクロ」というソフトを使って一つ一つコピー&ペーストでリネームしていましたが、もっと素早くリネーム出来る事を望んでいます。 お手数ですが回答をしてもらえると大変ありがたいです。それではよろしくお願いいたします。

  • バッチファイルでファイル名を一括変更するには

    大変お世話になっております。 windows上で、100個程度のファイル名を、一括で変換するバッチファイルを作りたいのですが、renコマンドの使い方が分かりませんでした。 何方か、お分かりでしたら、ご教示頂けると大変助かります。 ファイル名は、下記の通りになります。 【下記は変更前のファイル名】 235-R2022001978.pdf 2345677-R2022001979.pdf iiii-R2022001980.pdf 896-R2022001981.pdf eee-R2022001982.pdf やりたい事は、各ファイル名の変更後がR以下の文字の名前にすることです。 例えば、『235-R2022001978.pdf』→『R2022001978.pdf』へリネームしたいです。

  • イラレ10のアクションをapplescriptで実行したい

    イラストレータ10形式のEPSファイルを、 applescriptのドロップレットでイラレ8形式で保存したい。と思ってます。 イラレのアクションで8形式で保存するものは作っているのですが、 applescriptでどのようにアクションを動かすのかわかりません。 ネットで調べるとイラレ9での方法はあるのですが、10での方法がありません。。。 (9ではdo script "アクション名"でできるみたいですが10ではできないです) だれか教えてください。osは9.2です。 ※ヤフー掲示板では無回答でした。。。

  • 一括でファイル名の一部を置換したい

    LinuxのFedora Core 10, シェルにtcshを使用しています。よろしくお願いします。 ======================================================================= 複数のディレクトリ内に、"(from home)"のような文字列を含むファイルがあり、 それらのファイル名から一括で"(from home)"という文字列を取り除きたいのですが ======================================================================= 例えば以下のように、2つのディレクトリ(Directory1,Directory2)の下に、 "(from home)"という文字列を含むファイルが2つずつある場合を考えて、 /Directory1/sample (from home).txt         sample2 (from home).txt /Directory2/ sample3 (from home).txt          sample4 (from home).txt > rename "(from home)" "" `find / -name "(from home)" -print` を試したのですが上手くいかず、 > foreach i (`find / -name "(from home)" print`) foreach? rename "(from home)" "" $i foreach? end でも上手くいきませんでした。 もしかしたらfindコマンドで見つけたファイル名をrenameコマンドに 上手く渡せていないのかと思うのですが、どのようにすれば良いのでしょうか? また別の方法でも、一括でファイル名の一部を変更する方法があれば、 ご教授お願い致します。

  • PDFの一括ファイル名変更について

    現在、日付がファイル名になっているPDFが1000ほどあります(それぞれは20ページほど)。 その大部分はヘッダ部に通し番号、本文一ページ目の一行目に題名があります。 一括処理にてリネームを行いたいのですが、その際、各PDFファイルの内容の一行目を、現在のファイル名に追加するようにできませんでしょうか? ツール等あれば教えてください。 よろしくお願いします。

  • 複数のHTMLファイルを1つのPDFファイルにするには?

    たとえばHTMLファイルが200ファイルあったとします。 これをできるだけ手間がかからない方法で、 1つのPDFファイルに変換する方法はないでしょうか? HTMLファイルにはCSSやJSを含んでいます。 少しぐらいならレイアウトは崩れても構いません。 ただしHTMLのファイル名が以下のような場合、 PDFのページがファイル名の順番と同じでなければなりません。 001.html → PDFの1ページ目 002.html → PDFの2ページ目 003.html → PDFの3ページ目 以下続く... Acrobat 6.0やDistillerを使用して変換しても 最初の1ページ目しかPDF化されません。 Acrobat 6.0の「PDFの作成→複数ファイル」も 残念ながらHTMLに対応していませんでした。 またブラウザから「Adobe PDF」を使用してPDFにするには あまりもファイル数が多すぎます。 フリーウェア、シェアウェアを使用しても構いません。 希望に添うツールがありましたらご紹介ください。 よろしくお願いいたします。 所有アプリ Windows XP Adobe Acrobat 6.0 Adobe CS RoboHelp 9.2

  • ファイル名の一部をそのファイル内に置換したい(もしくは連番)

    ファイル名の一部をそのファイル内に置換したいのですが、何か方法はありますでしょうか?(複数ファイル処理で) もしくは置き換えた文字の後ろに連番をつけていきたいのですが。秀丸エディタをよく使用しているのですができないようでベクターなども調べましたが見つかりませんでした。 例:sの後ろの数字を置き換えたとき ファイル名: テスト_s23_p43.txt ファイル内容: 置換前 No, 0 置換後 No, 23

  • ファイル名のリネームについて

    フリーソフトのFlexible Renamerを使ってmp3のファイル名をリネームしたいと考えています。 ◆元のファイル名 「アーティスト名」「 全角-」「 タイトル」.mp3 (例)安室奈美恵-Hero.mp3   ↓ ◆リネーム後 「トラック番号」「半角スペース」「タイトル」.mp3 (例)7 Hero.mp3 という形にリネームしたいのです。 リネーム後の「トラック番号」はmp3のIDタグから取得し、「タイトル」はIDタグではなく、元のファイル名のままにしたいと考えています。 添付画像の状態まではできるのですが、それ以降がわかりません。どのようにすればよいでしょうか?

  • ファイル名を一括でリネームする

    複数のPDFファイルを一括でリネームする(ファイル名を変える)方法を以前新聞で読んだことがあるのですが、やり方を知っている方、教えてください。

このQ&Aのポイント
  • MFC-J6995CDWの黒のみかすれてきたため、カードリッジを交換しましたが色が出ません。
  • Windows10で使用しており、無線LANで接続しています。関連するソフト・アプリはありません。
  • 電話回線の種類はひかり回線です。
回答を見る