我想在某些文件夾中的所有文件.odt
遞歸,提取其文本內容,並從他們創造.txt
文件(因此命名,因此A.odt - > A.TXT)grep的所有ODT文件和管他們odt2txt
問題是,除了一些小竅門,我並不擅長殼。
grep命令這是很容易:grep -r -i --include \*.odt .
odt2txt的手冊頁說,我需要指定--output=FILE
因此,對於一個文件,這將是odt2txt A.txt --output=A.txt
這就像一個魅力。但如何將這兩者結合?
我在這裏面臨着兩個問題,通常我會連鎖我的命令(再次,外殼小白)與管道,像這樣
grep -r -i --include \*.odt . | odt2txt $INPUT_FROM_GREP --output=$MISSING_NAME
但正如你所看到的,odt2txt想要的文件名作爲第一個參數,以及如何獲取名稱,而不需要使用odt2txt
的擴展名?
我覺得我不在正確的軌道上。
輸出文件名中的路徑怎麼樣? 'basename'只傳遞沒有路徑的文件名。 – ideaboxer
也是次要的事情是,文件將被稱爲.odt.txt之後,而不僅僅是.txt(但這根本不重要) – Sorona
你說得對。反引號根本不起作用,因爲他們先找到了引號,然後才發現找到了。 – Abigail