Menu

Skip to content
AppleScriptの穴
  • Home
  • Products
  • Docs
  • Events
  • Forum
  • About This Blog
  • License
  • 仕事依頼

AppleScriptの穴

Useful & Practical AppleScript archive. Click '★Click Here to Open This Script' Link to download each AppleScript

ファイルからのメタデータ情報の取得

Posted on 11月 21 by Takaaki Naganoya

指定ファイルからのメタデータ情報の取得を行うAppleScriptです。

メタデータの取得はshell commandの「mdls」で行えます。ほぼそれと同じ内容です。ループですぺての属性値を取得するか、属性ラベルを指定して個別に属性値を取り出すことになります。

この方法でメタデータの書き込みや追記が行えないかと調べてみましたが、どうもできないようで「自前でMDImporterを作れ」とか言われてもテーマが大きすぎて困ります……

メタデータの書き込みはshell commandのほうが手っ取り早そうです。

AppleScript名:ファイルからのメタデータ情報の取得 v1scptd
—
–  Created by: Takaaki Naganoya
–  Created on: 2019/11/21
—
–  Copyright © 2019 Piyomaru Software, All Rights Reserved
—
use AppleScript version "2.4" — Yosemite (10.10) or later
use framework "Foundation"
use scripting additions

property |NSURL| : a reference to current application’s |NSURL|
property NSMetadataItem : a reference to current application’s NSMetadataItem

set aFile to POSIX path of (choose file)
set aURL to |NSURL|’s fileURLWithPath:aFile

set aMetaInfo to NSMetadataItem’s alloc()’s initWithURL:aURL
set attrList to (aMetaInfo’s attributes()) as list

set metaList to {}

repeat with i in attrList
  set j to contents of i
  
set aTmpVal to (aMetaInfo’s valueForAttribute:(j))
  
set the end of metaList to {j as string, aTmpVal as {number, string, date, list}}
end repeat

return metaList

★Click Here to Open This Script 

AppleScript名:ファイルからのメタデータ情報の取得 v2.scptd
—
–  Created by: Takaaki Naganoya
–  Created on: 2019/11/21
—
–  Copyright © 2019 Piyomaru Software, All Rights Reserved
—
use AppleScript version "2.4" — Yosemite (10.10) or later
use framework "Foundation"
use scripting additions

property |NSURL| : a reference to current application’s |NSURL|
property NSMetadataItem : a reference to current application’s NSMetadataItem

set aFile to POSIX path of (choose file)
set aURL to |NSURL|’s fileURLWithPath:aFile

set aMetaInfo to cNSMetadataItem’s alloc()’s initWithURL:aURL

–指定した属性ラベルの値だけ一括で取り出す
set metaDict to aMetaInfo’s valuesForAttributes:{"kMDItemContentTypeTree", "kMDItemContentType"}
–>
(*
(NSDictionary) {
  kMDItemContentTypeTree:{
    "com.apple.application-bundle",
    "com.apple.localizable-name-bundle",
    "com.apple.application-bundle",
    "public.directory",
    "public.executable",
    "com.apple.application",
    "public.item",
    "com.apple.package",
    "com.apple.bundle"
  },
  kMDItemContentType:"com.apple.application-bundle"
}
*)

★Click Here to Open This Script 

More from my site

  • CIFilterとGPUImageで画像差分検出演算を比較CIFilterとGPUImageで画像差分検出演算を比較
  • URLエンコードずみ文字列チェックURLエンコードずみ文字列チェック
  • アラートダイアログ上のWebViewに世界地図を表示 v2bアラートダイアログ上のWebViewに世界地図を表示 v2b
  • アラートダイアログ上のWebViewに円グラフを表示アラートダイアログ上のWebViewに円グラフを表示
  • 指定アプリケーションの指定ロケールのフォルダ内の該当キーワードを含むstringsファイル情報を抽出する指定アプリケーションの指定ロケールのフォルダ内の該当キーワードを含むstringsファイル情報を抽出する
  • 指定フォルダ以下のすべてのファイルとフォルダ名から絵文字を除去する v2指定フォルダ以下のすべてのファイルとフォルダ名から絵文字を除去する v2
Posted in file Metadata | Tagged 10.14savvy 10.15savvy NSMetadataItem NSURL | Leave a comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

電子書籍(PDF)をオンラインストアで販売中!

Popular Posts

  • macOS 10.15beta関連
  • 2019年に書いた価値あるAppleScript
  • (GET)openBDで1冊分の情報を取得する
  • ダークモードの検出 v4
  • map scripter script Library
  • ファイルパスの変換(Alias→POSIX path→NSURL→POSIX path→file→Alias)
  • Numbersで選択範囲のセルのデータを取得して重複データを抽出
  • Mojaveに合わせて「Mac OS XのバージョンとAppleScriptの動向の年表」を改定
  • Pages書類の1ページ目の表の背景色を置換
  • macOS 10.14にchoose fileのバグ?
  • ファイルの存在確認
  • 青空文庫のテキストのルビタグを超高速削除
  • マウスカーソルの現在座標を取得する
  • mouseClickを用いて指定座標をクリック
  • iTunes上で選択中のTrackのアートワークを指定画像に設定する
  • POSIX pathからファイル名と親フォルダを抽出
  • Safariで表示中のWebページの最終更新日時を取得
  • macOS 10.14で新設されたエラーコード-1743を確認する
  • Numbersの表を回転
  • iCloud Driveフォルダへのパスを求める

Tags

10.11savvy (1121) 10.12savvy (1250) 10.13savvy (1244) 10.14savvy (302) 10.15savvy (78) CotEditor (43) Finder (36) ITLibrary (13) iTunes (24) Keynote (46) Mail (11) NSAlert (33) NSAlertSecondButtonReturn (13) NSArray (51) NSBezierPath (11) NSBitmapImageRep (15) NSButton (17) NSColor (39) NSCountedSet (16) NSDictionary (26) NSFileManager (20) NSFont (13) NSImage (31) NSJSONSerialization (11) NSMutableArray (48) NSMutableDictionary (19) NSPredicate (37) NSRunningApplication (31) NSScreen (22) NSScrollView (17) NSSortDescriptor (15) NSString (87) NSTextView (11) NSURL (58) NSUTF8StringEncoding (12) NSUUID (15) NSView (27) NSWindow (11) NSWorkspace (12) Numbers (33) OSALanguage (11) OSAScript (17) Safari (24) Script Editor (16) TextEdit (13)

カテゴリー

  • AirDrop
  • AirPlay
  • AppleScript Application on Xcode
  • Bluetooth
  • boolean
  • Bug
  • Calendar
  • call by reference
  • Clipboard
  • Code Sign
  • Color
  • dialog
  • drive
  • exif
  • file
  • File path
  • filter
  • folder
  • Font
  • font
  • geolocation
  • GUI
  • GUI Scripting
  • How To
  • Icon
  • Image
  • Input Method
  • Internet
  • JXA
  • Keychain
  • Language
  • list
  • Locale
  • Machine Learning
  • Markdown
  • Menu
  • Metadata
  • MIDI
  • MIME
  • Natural Language Processing
  • Network
  • news
  • Noification
  • Notarization
  • Number
  • OCR
  • OSA
  • PDF
  • QR Code
  • Raw AppleEvent Code
  • Record
  • recursive call
  • regexp
  • Release
  • Remote Control
  • Require Control-Command-R to run
  • REST API
  • RTF
  • Sandbox
  • Screen Saver
  • Script Libraries
  • sdef
  • search
  • Security
  • shell script
  • Sort
  • Sound
  • Spellchecker
  • Spotlight
  • SVG
  • System
  • Tag
  • Text
  • Text to Speech
  • timezone
  • Tools
  • URL
  • UTI
  • Web Contents Control
  • WiFi
  • XML
  • XML-RPC
  • イベント(Event)
  • 未分類

アーカイブ

  • 2019年12月
  • 2019年11月
  • 2019年10月
  • 2019年9月
  • 2019年8月
  • 2019年7月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年11月
  • 2018年10月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2018年5月
  • 2018年4月
  • 2018年3月
  • 2018年2月

https://piyomarusoft.booth.pm/items/301502

メタ情報

  • 登録
  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org
Proudly powered by WordPress
Theme: Flint by Star Verte LLC