参考情報
greple を Mac へインストール
ターミナルより、次の3つのコマンドでインストールできます。
※参考情報であげたサイトをみると brew (要 Homebrewのインストール)でインストールしてますね。
sudo cpan install App::Greple::perl
sudo cpan install App::cpanminus
sudo cpanm install App::Greple::msdoc
cpan は perl モジュールをインストールするためのツールで、macOS には標準搭載されています。これを使って greple をインストールします。 /Library 以下に書き込む(標準 perl を使うので)ため、sudo を使って管理者権限でインストールします。
greple コマンドは、
- /usr/local/bin/greple
にインストールされます。
次に cpanm コマンドをインストールします。これは App::cpanmius というモジュールをインストールすることで利用できるようになります。
cpanm コマンドは、
- /usr/local/bin/cpanm
にインストールされます。
cpanm をインストールした理由は、App:Greple::msdoc(GitHub)のINSTALL項目に、「cpanm App::Greple::msdoc」とあったので、cpanm があったほうがいいのだろうな、、という軽い気持ちでした。
cpanm をインストールした理由は、App:Greple::msdoc(GitHub)のINSTALL項目に、「cpanm App::Greple::msdoc」とあったので、cpanm があったほうがいいのだろうな、、という軽い気持ちでした。
で、そのコマンドを叩いてインストールしたのでした。
/usr/local/bin への PATHを通そう!
macOS 標準の bash シェルを使っているなら、
which greple
/usr/local/bin/greple
とPATHがすでに通っていれば何もしなくてもよいのですが、
which greple と /usr/local/bin/greple 等 greple のPATHが表示されないなら、PATHを設定する必要があります。
which greple と /usr/local/bin/greple 等 greple のPATHが表示されないなら、PATHを設定する必要があります。
~/.bash_profile に
export PATH="/usr/local/bin:$PATH"
を追加しておきましょう。
使ってみよう!
とまぁ、インストールは cpanm をどうやってインストールするのかなとかで少し手間取りましたが、終わってみれはあっさりとインストールできました。インストールしたからには使ってみなければ!ですね!
Microsoft Office 2016 for Mac で、2種類のフォーマットの Word文書を用意してみた
でまぁ文章は上記の通りですね。あまり考えてません (^^;
ダウンロードフォルダに test.docとtest.docx を置いたとします。
ダウンロードフォルダに test.docとtest.docx を置いたとします。
現在の Word 形式の場合
greple -Mmsdoc --dump ~/Downloads/test.docx > ~/Downloads/test.txt
としてダウンロードフォルダに text.txt として出力してみましょう。
それを CotEditor というテキストエディタで開きます。
ほうほう、改行コードは LF なのね。。また段落(Enter)ごとに空行が入るのは仕様だそうです(参考情報によれば)。ちなみに、Shift+Enter (改行)は、認識しないようで、テキストデータで出すと、改行なしで出力されます。
を出力すると
になります。
画像を途中で挟んでも、そこは無視されてテキスト部分だけが出力されます(当たり前か)。
古い Word 97-2014 形式の場合
greple -Mmsdoc --dump ~/Downloads/test.doc > ~/Downloads/test2.txt
SKIP /Users/◯◯/Downloads/test.doc
あらま、古い形式は対応していないようですね。
test2.txt も空でデータが入っていません。
検索してみよう
ふむふむ。まぁ テキストファイルに落とし込めたなら、あとは別ツールを使えばいいので、このあたりでいいかな。
PowerPoint もいけるそうだが、どうやる?
折角なので、発表に使ったデータでやってみましょう。
のように 64スライドもあります。画像も沢山つかっています。
これを test.pptx にリネームして、ダウンロードフォルダにいれておきます。
greple -Mmsdoc --dump ~/Downloads/test4doc > ~/Downloads/test4.txt
とするとあっさりできましたね。
ちなみにサクッと出来ました。time で時間をはかるとほぼ一瞬。
time greple -Mmsdoc --dump ~/Downloads/test4.pptx> test4.txt
real 0m0.297s
user 0m0.218s
sys 0m0.047s
はやいな!
データは、スライドにページ番号をいれていたので、
開幕〜いきますよ!
開幕〜いきますよ!
9
のようにスライド9番目だなというのは分かります。ただスライドの順番がバラバラですねぇ。スライド28→7→8→9→10→22→11→..
スライド44の文字化け
は、下図のように元スライドをみると「→」か。。まぁ一部このような部分もありますが、ほぼテキストをうまく取り出しているのですごいですね!
じゃあ、Excelはいけるの?いけるよね?
Excelデータを test5.xlsx としてダウンロードフォルダに入れる
さすがに意味不明なデータになりますね。
元は、下記のようにA - E にデータが入っていました。もちろんテキストデータとしては問題なく出力できていますが、どの行かわからなーいという感じに。
簡単に使えるようにエイリアス設定をしておこう!
greple というコマンド自体覚えておける自信がありません。
ここは alias コマンドで好きな名前で使えるようにしちゃいましょう。
macOS の標準シェルは bash です。ので、 ~/.bash_profile の末尾に、
alias msdump='greple -Mmsdoc --dump'
msdump ◯◯.docx > △△.txt
のように、コマンドオプションを知らなくても使えるようになりますよ。
XML形式での出力も可能
何かプログラム処理をしたいなら、そういうのもありかもしれません。
greple -Mmsdoc --dump --indent ~/Downloads/test.docx > ~/Downloads/test.xml
などのように --dump に加えて --indent オプションを追加するだけです。
すると下図のように、XML形式のデータとして出力できますね。
とちょっと面白そうなコマンドだなと思っていろいろ試したのでした。これはなかなか良さそうですね!
2018年7月3日 @kimipooh
0 件のコメント:
コメントを投稿