デザインねこ

現役グラフィックデザイナーがお届けするデザインの時短ネタや参考ネタ、HOW TOなどのお役立ち情報から、ハンドメイド、インテリアや暮らし、ネコとの生活など様々なジャンルの記事を2人と1匹でお届けする(デザインよりの)雑記ブログ。

フォルダの名前を、フォルダの中のデータの先頭につける、ニッチなスクリプトのご紹介!(mac向け)

f:id:toraneko-design:20180217124605j:plain

こんにちは、今日もよろしくお願いします、デザインねこです。(@toranekodesign)

今回はちょっとレアなオペレーションかもしれませんが、フォルダの名前を、フォルダの中のデータの先頭につけるときに役立つスクリプトをご紹介します。具体的な例を書くと、下記の画像のように「toraneko」というフォルダの中に001.jpg、002.jpg、003.jpgというデータがある場合、このスクリプトを稼動すると、toraneko001.jpg、toraneko002.jpg、toraneko003.jpgというデータが出来上がるといったものになります。

ちょっとニッチなオペレーションかもしれませんが備忘録も兼ねてこちらの操作をまとめておきたいと思います。


このスクリプトの使い方

今回のスクリプトはこちらのページから使わせていただきました。コピペで使えるのでとてもありがたいですね。具体的な手順としては、

1.ユーティリティフォルダ内へ移動し(⌘+SHIFT+U)「スクリプトエディタ.app」を起動して新規ドキュメントを開く。(※OS 10.10未満では「AppleScript エディタ.app」になります。私は10.10未満のためこちら)

 

2.「新規書類」を作成


3.左上「AppleScript」を選択


4.下記のコードをペーストしドキュメントを保存します。名前はなんでもOK!場所もどちらでもOKです。「フォーマット」は「スクリプト」を選択してください。

tell application "Finder" set mySelec to selection set myMsg to "複製先フォルダを選択して下さい" set ans to choose folder with prompt myMsgset errList to {} repeat with This in mySelec if kind of This is "フォルダ" then set fileList to files of entire contents of This as list repeat with ThisFile in fileList if text 1 of (name of ThisFile as string) is not "." then tell ThisFile set fullPath to POSIX path of (ThisFile as string) set folderName to name of parent set fileName_full to name set ext to name extension set fileName to text 1 thru -((count of ext) + 2) of fileName_full set newName to folderName & "_" & fileName_full end tell try set temp to duplicate ThisFile to ans set theErr to false on error set theErr to true set end of errList to POSIX path of (ThisFile as string) & return & return end try if theErr is false then set counter to 1 repeat try set name of temp to newName exit repeat on error set comment of temp to fullPath set counter to counter + 1 try set name of temp to folderName & "_" & fileName & "-" & counter & "." & ext exit repeat end try end try end repeat end if end if end repeat end if end repeat end tellif errList is not {} then set myMsg to "エラーのため処理できなかったフォルダがありました。" activate display dialog myMsg default answer errList as string buttons {"終了"} default button 1 with icon 2 end if



5.ここからスクリプトに登録をしていきます。右上にある「S」のようなマークをクリックします。



6.「スクリプトフォルダを開く」をクリック!。



7.さらに「ユーザ・スクリプトフォルダを開く」をクリックして。その中の「Scripts」の中に作成したスクリプトを格納します。これで作成したスクリプトが使用できるようになります。」



8.右上のスクリプトで確認します。

以上で登録が完了します。

このスクリプトの使い方

冒頭で使用したように、フォルダ名をフォルダ内のデータの先頭につける事ができます。具体的な使い方としては、該当するフォルダをクリックしてアクティブの状態に(ここではさきほどと同じ「toraneko」フォルダをクリック)。



この状態で先ほどスクリプトに追加された「script」をクリック!

ちなみに「toraneko」フォルダの中はこんな感じ。

「script」を選択すると、複製先(実行後のデータを格納したい)フォルダを選択する画面に。ここではあらかじめ作っていた「実行後」フォルダへ。

操作後の「実行後」フォルダはこんな感じ。フォルダ名のtoranekoと001(連番名).jpgの名前がついたファイルができました。

このスクリプトの使いどころ

このスクリプトの使いどころとしては、画像などの大量のデータをまとめるとき。これに関しては別の記事でまとめる準備をしていますが、実際の使いどころでは、会社の画像管理に使用しています。ちょっと説明するとバーコード(型番_JANコード)名のフォルダでまとめ、その中のデータをバーコード名+01.jpg、02.jpg、03.jpg・・・などの連番で管理するようにしています。こうすることで型番かバーコードがわかれば社内のだれでも画像をスムーズに検索することが出来るというシステムになっています。これはまた別の記事にてご紹介いたします。



まとめ

今回は、フォルダ名を下層のデータの頭につけるスクリプトのご紹介でした。使いどころは少ないかもしれませんが、かなり便利なスクリプトです。個人的には以前紹介した「いっきに作成」との組み合わせがオススメ。

design-neko.hatenablog.com

複合した使い方はまた別の機会にまとめてご紹介しますね。このスクリプト、簡単に使えるので気になった方はぜひ一度ためしてみてくださいね。