電子書籍「Cocoa Scripting Course」の第9巻、File Processingを刊行しました。PDF 449ページです。
→ 販売ページ
本書は、Cocoa Scripting本の第9弾。Cocoaの機能を使って圧倒的に高速かつ高度なファイル処理を行いたいScripterには必携の1冊です。8巻と9巻は続巻になっており、ファイルパスの処理については8巻で、実際のファイル処理についてまとめたのがこの9巻です。ファイル処理の基礎的なものから実践的なレベルまで、幅広い内容をよりわかりやすく解説しました。
AppleScriptを習得している人は、もれなくCocoa Scriptingを使うべきです。そして、その最大の理由がこのファイル処理(高速&高機能)といえます。
Cocoaのファイル処理は、大量のファイルを処理してはじめて実力を発揮します。SSD+Cocoa Scriptingによるファイル処理は、Finder経由で行うよりも、大量のファイル処理時にスピード面で大きなアドバンテージがあります。
目次
1章 入門編
2章 実践編
3章 ファイル操作 基礎編
◽️ファイル処理の基礎知識
ファイルパス関連の専門用語
ファイル処理の基礎
AppleScriptとCocoaのパス表現の違い
本書掲載のファイル処理AppleScriptについて
◽️ファイル/フォルダ名の取得
ファイル名の取得
フォルダ名の取得
◽️ファイル/フォルダの存在確認
ファイル/フォルダの存在確認
フォルダの存在確認(+なければ作成)
◽️ファイル/フォルダ名の変更(リネーム)
ファイル名のリネーム
フォルダ名のリネーム
(参考資料)リネームできない名前
◽️ファイル/フォルダのコピー
ファイルのコピー
フォルダのコピー
◽️ファイル/フォルダの移動
ファイルの移動
フォルダの移動
ファイルの移動(新規フォルダ作成つき)
フォルダの移動(新規フォルダ作成つき)
◽️ファイル/フォルダの削除
ファイル/フォルダの削除(ゴミ箱に移動)
ファイル/フォルダの削除
4章 ファイル操作 実践編
◽️ファイル内容の読み込み
文字コードを指定してファイル読み込み
文字コードを自動判別して読み込み①
文字コードを自動判別して読み込み②
文字コードを自動判別して読み込み③
◽️ファイル書き込み
指定文字コードでファイル書き込み①
指定文字コードでファイル書き込み②
指定文字コードでファイル書き込み③
◽️ファイル比較
2つのファイルの比較
2つのテキストファイルの内容比較
◽️Finderラベルの処理
FinderラベルとFinderタグ
Finderラベルについて
ファイルのラベルを取得する
ファイルのラベルをクリアする
ファイルのラベルを設定する
ラベル名称を取得
指定言語でローカライズされたラベル名を取得
ラベルINDEXで絞り込み検索
ラベルINDEXで絞り込み検索(Spotlight)
◽️Finderタグの処理
Finderタグについて
タグを取得する
タグをクリア
タグを設定する
タグを追加する
タグ名からINDEX値を取得
◽️ファイル/フォルダの属性情報の変更
ファイルの作成/修正日時の変更
ファイルの作成日時の変更(ダイアログ選択)
フォルダの作成日時の変更
フォルダの作成日時の変更(ダイアログ選択)
EXIF情報をもとにJPEG画像の作成日を変更①
EXIF情報をもとにJPEG画像の作成日を変更②
指定フォルダ以下のScript書類の作成・修正日を変更
◽️フォルダ内のファイル取得
ファイルパス/ファイル名一覧取得
ファイルパス一覧取得+ファイル名でソート
ファイルパス一覧取得+変更日付でソート
指定文字列を含む名称のファイルを取得①
指定文字列を含む名称のファイルを取得②
拡張子リストの拡張子のファイルパスを取得
拡張子リストの拡張子のファイル名を取得
指定UTIに属するファイルパスを取得①
指定UTIに属するファイルパスを取得②
◽️ファイル名衝突回避つきリネーム
新規名称を指定して名称衝突回避しつつリネーム①
新規名称を指定して名称衝突回避しつつリネーム②
指定パスの存在確認+リネーム
フォルダの存在確認+フォルダ確認+リネーム
ファイルの存在確認+衝突回避+子番号追加
フォルダ内の大量のファイルの一括リネーム①
フォルダ内の大量のファイルの一括リネーム②
フォルダ内の大量のファイルの一括リネーム③
フォルダ内の大量のファイルの一括リネーム④
フォルダ内の大量のファイルの一括リネーム⑤
5章 その他のファイル処理
◽️Metadata Libを用いたSpotlightファイル検索
指定フォルダ以下のSpotlight検索①
指定フォルダ以下のSpotlight検索②
指定フォルダ以下のSpotlight検索③
指定フォルダ以下のSpotlight検索④
指定フォルダ以下のSpotlight検索⑤
指定フォルダ以下のSpotlight検索⑤
指定フォルダ以下のSpotlight検索⑥
指定フォルダ以下のSpotlight検索⑦
指定フォルダ以下のSpotlight検索⑧
◽️NSFileManagerによるファイル検索
NSFileManagerによるファイルパスの取得
NSFileManagerによるファイルパスの取得+拡張子による抽出
◽️ファイル/フォルダへのカスタムアイコンの設定
指定ファイルのアイコン取得、設定
指定ファイルのカスタムアイコン削除
指定フォルダのアイコン取得、設定
指定フォルダのカスタムアイコン削除
◽️ファイルの暗号化/復号化
FBEncryptorで文字列の暗号化、復号化
◽️Zipアーカイブの情報取得
ZIP関連のオープンソースプログラムの注意点
アーカイブ中のファイル情報取得(ZipZap)
アーカイブ中のファイル情報取得(SevenZip)
アーカイブ中のファイル情報取得(ZipZap)①
アーカイブ中のファイル情報取得(ZipZap)②
アーカイブのパスワード設定確認(ZipArchive)
アーカイブのパスワード照合(ZipArchive)
◽️Zipアーカイブの作成/展開
ファイルからZipアーカイブの作成(ZipArchive)
フォルダからのZipアーカイブの作成(ZipArchive)
フォルダからのZipアーカイブの作成(ZipArchive)
ファイルからZipアーカイブの作成(ditto)
フォルダ構造ごとZipアーカイブの作成(ditto)
Zipアーカイブの展開
NSDataを圧縮/展開
◽️ファイルのチェックサムやハッシュ値の計算
ファイルのMD5/SHA1/SHA512ハッシュ値を計算(md5Lib)
NSDataのMD5ハッシュ値を計算
ハッシュ値をもとに画像判定①
ハッシュ値をもとに画像判定②
ハッシュ値をもとに画像判定③
添付サンプルScript紹介
資料編
Cocoa Scripting関連のAppleScript命令
Cocoa ScriptingとScript Object
AppleScript Droplet
サードパーティ製FrameworkやAppleScript Librariesを呼ぶ
AppleScript mini reference
AppleScript 各種ランタイム環境および関連ツール
AppleScript予約語一覧
エラーコード表
理解度確認テスト
あとがき、奥付