メモ:大量の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
解説は暇な時に
とりあえずこれはメモ
無責任なやつだなぁ
Discussion
New Comments
No comments yet. Be the first one!