文書ファイルをプレーンテキストに変換する
文書ファイルフォーマットの変換には、「-convert
」オプションに続けて変換後のフォーマット(表1)を指定する。引数には変換前のファイルのみ指定すればよく、変換後のファイル名を省略した場合は、自動的に「オリジナルファイル名+変換後の拡張子」と命名される。変換後のファイル名を指定する場合は、「-output
」オプションを使用する。
$ textutil -convert txt "お知らせ.docx"
$ textutil -convert txt "お知らせ.docx" -output notice.txt
変換前のフォーマットは自動判別されるが、プレーンテキストを指定した場合、シフトJIS以外のエンコーディング形式は受け付けられない。なお、変換後のフォーマットにプレーンテキストを指定すると、初期値の文字エンコード形式として「UTF-8」が適用される。
表1:「textutil」コマンドで変換可能な文書フォーマット | |
---|---|
対応形式 | 説明 |
txt | プレーンテキスト |
html | HTML/XHTML |
rtf | リッチテキスト |
rtfd | 添付書類付きリッチテキスト |
doc | Word文書(Word 97-2004) |
docx | Word文書(OOXML/Word 2007以降) |
wordml | WordprocessingML(XML) |
odt | OpenDocument(ODT、OpenOffice.orgなど) |
webarchive | Webアーカイブ(Safariの保存形式) |
入出力の文字エンコーディング形式を指定する(プレーンテキスト)
textutil
コマンドは、入力するプレーンテキストファイルの文字エンコーディング形式をシフトJISとして処理する。そのままでは、JIS(ISO-2022-JP)や日本語EUCのファイルは正しく認識されないため、「-inputencoding
」オプションに続けてIANA名またはNSStringEncodingクラスで使う名称(例:EUC-JP/JIS/SJIS/UTF-8)を指定する。
$ textutil -inputencoding EUC-JP -info eucjp.txt
変換後の文字エンコーディング形式を指定する場合は、「-encoding
」オプションに続けてIANA名を指定する。前述した「-inputencoding
」オプションを利用すると、シフトJISやUTF-8以外のエンコーディング形式も自在に変換できるが、以下に示すとおりコマンドラインは冗長なものとなる。
$ textutil -inputencoding UTF-8 -convert txt utf8unix.txt -encoding SJIS -output sjis.txt
HTMLファイルをまとめてWord文書化する
textutil
コマンドでは、入力にワイルドカードを使用できる。以下に示すコマンド実行例では、カレントディレクトリ上にあるHTMLファイルすべて(*.html)を連結し、OOXML形式のWord文書「ASCIIJP.docx」として書き出している。
$ textutil *.html -cat docx -output ASCIIJP.docx
この連載の記事
-
第187回
iPhone
NFCの世界を一変させる!? iOS 11「Core NFC」の提供開始が意味するもの -
第186回
iPhone
Appleと「4K HDR」 - iOS 11で写真/動画を変える「HEIF」と「HEVC」 -
第185回
iPhone
iPhone 7搭載の「A10 Fusion」「W1」は何を変えるか -
第184回
iPhone
オープンソース化された「PowerShell」をMacで使う -
第183回
iPhone
アップル製デバイス連携の鍵、「Continuity」とは? -
第182回
iPhone
DCI-P3準拠へと歩むiPhone/iPad - WWDC基調講演で秘められた新技術は、ここにある(2) -
第181回
iPhone
WWDC基調講演で秘められた新技術は、ここにある(1) -
第180回
iPhone
WWDC直前、買い替え前にマイMacのココをチェック -
第179回
iPhone
私がiTunesを使わなくなった5つの理由 -
第178回
iPhone
今あえてiPhone「Live Photos」を知る -
第177回
iPhone
「Windows Subsystem for Linux」はOS Xのライバルとなるか? - この連載の一覧へ