pdftotextルックアップの色で区切られた結果の並べ替えと保存

pdftotextルックアップの色で区切られた結果の並べ替えと保存

結果をソートしないことを除いて、完全に機能するfindコマンドがあります。 path = 検索するフォルダパス foo = 検索語

find /path/ -name '*.pdf' -exec sh -c 'pdftotext "{}" - | grep --with-filename --label="{}" --color -i "foo"' \;

結果(私の画面では「foo」が赤です)

me@myComp ~ $ find /path/ -name '*.pdf' -exec sh -c 'pdftotext "{}" - | grep --with-filename --label="{}" --color -i "foo"' \;
/path/lesson 05.pdf:a foo
/path/lesson 05.pdf:  (to have) a foo when I was 10 years old.
/path/lesson 07.pdf:a foo
/path/lesson 07.pdf:Elephant – foo – heavy
/path/lesson 07.pdf:Elephant – foo – heavy – light
/path/lesson 07.pdf:tigers – high – foos – to jump
/path/lesson 04.pdf:10 My foo (not to eat) fat.
/path/lesson 06.pdf:A: John lost the foos collar. B: Is this its ? (rarely used)
/path/lesson 06.pdf:A: This is my foo. .......... is a chihuahua. .......... name is Sleeper.

fooを赤に保ちながら、パス/ファイル名に基づいてアルファベット順に結果を並べ替える方法はありますか?ご覧のとおり、Lesson 04.pdfはLesson 07.pdfとLesson 06.pdfの間にあります。

|最後のソートを使用すると、fooが赤ではなくなることを除いて、目的の結果を得ることができます。

非常にありがとう

ベストアンサー1

私はこれがあなたが望むことをしなければならないと思います。

while read file; do pdftotext "$file" | grep --with-filename --label="$file" --color -i "foo"'; done < <(find /path/ -name '*.pdf' | sort)

おすすめ記事