Classic Mac OSでは拡張子よりもCreator TypeやFile Typeでファイルを識別していました。
そのせいか、社内ルールのオリジナルの拡張子をつけた画像もありました……
さて、時代が流れて令和になったいまでもeps拡張子のpsdデータなど見かけることがあります。
Twitterでも同様なデータで困っている方がいらっしゃるようで公開してほしいと要望いただきました。
もともと自分用に書いたのでエラー処理などしていません。
画像の拡張子となっていますが、exiftoolでデータが取れれば他の種類のデータでも付け替えてしまいます。
付け替えたファイルにはラベルをつけるようにしていますが、不要なら該当行を削除やコメントアウトしてください。
※要ExifTool
サイトかhomebrewでインストールしてください。
on open dropList
repeat with aFile in dropList
my main(aFile)
end repeat
end open
on main(aFile)
--現在の拡張子
set currentExtension to my getExtention(aFile)
--内部の拡張子
set shcmd to "/usr/local/bin/exiftool -T -Filetypeextension " & quoted form of POSIX path of aFile
set contentExtension to do shell script shcmd
if contentExtension is "" then return
--現在のファイル名
set nowName to name of (info for aFile)
--リネーム後のファイル名
set newName to my myDelimiters(nowName, currentExtension, contentExtension)
if currentExtension is not contentExtension then
tell application "Finder"
--リネーム処理
set (name of aFile) to newName
--ラベルを設定
set label index of aFile to 1
end tell
end if
end main
on getExtention(aFile)
set aExt to name extension of (info for aFile)
log aExt
set aExt to do shell script "echo " & aExt & " | tr A-Z a-z"
return aExt
end getExtention
on myDelimiters(theStr, FindStr, repStr)
set OriginalDelimiters to AppleScript's text item delimiters
set AppleScript's text item delimiters to FindStr
set theStr to text items of theStr
set AppleScript's text item delimiters to repStr
set theStr to theStr as string
set AppleScript's text item delimiters to OriginalDelimiters
return theStr
end myDelimiters