メモ:大量のPDFから特定のワードが含むものを抜き出す

その者の名は…!?

なに…?これ…?

なにって、至って普通のPDFファイル500個。全部手順書的なやつ

この中からDangerous.exeを含む手順を見つけて修正しなきゃいけない…

Dangerous.exe?実行するとどうなるの?

家のまえに転がっているセミの数が3倍になる

そ、それはやばい!!!

茶番すいません。

ここから先はメモ。理屈としては特定のディレクトリの中の全てのパスをfindコマンドでリスト化(pathlist…1)して、その中のうちファイル名の末尾(basenameコマンドで取得)が.pdf/.PDFのものを抜き出し、それをpdfリストとする。
それを読みこんで、それをすべて「pdftotext」コマンドでテキストにし、一箇所にまとめる。
またそれを読み込んでその中に[Dangerous.exe]という文字列があるのかをgrepで取得し、grepが0を返した行のみのリストを作る。それが「Dangerous.exeが含まれるpdfファイルをテキスト化したファイルの一覧…2」
2を読み込み2のファイル名から.txtを除いた文字列でpathlist…1の行それぞれにたいしgrepをかけ
一致したものが「Dangerous.exeをどこかに含むpdfのパス一覧…list_END」になるってわけさ!!!

$ cat list_1.txt | while read line; do pdftotext ${line} pdftotxt/`basename ${line}`.txt; done
$ cd pdftotxt ; ls | while read line; do cat $line | grep Dangerous.exe > /dev/null; if [ $? -eq 0 ];then echo ${line//.txt/}; fi; done > list_2.txt
$ cat list_2.txt | while read line; do   cat list_1.txt | grep ${line}; done > list_END.csv

解説は暇な時に
とりあえずこれはメモ

無責任なやつだなぁ