是否可以使用'grep'命令搜索多個pdf文件。它似乎不工作,人們如何搜索多個PDF文件的內容?在pdf文件上grep能正常工作嗎?
回答
我只是尋找一個簡單的搜索功能在這裏 – Sam 2010-04-22 06:18:21
要注意:在未來,簡單搜索更多的是超級用戶問題,imo。我回答了這些問題,因爲這些解決方案可能會以編程方式執行。 – xenoterracide 2010-04-22 08:50:50
Pdf是一種二進制格式,這就是爲什麼使用grep進行搜索沒有什麼幫助。您可以搜索字符串是使用grep一個pdf這樣的:
ls dir_with_pdfs/*.pdf|xargs strings|grep "keyword"
或者你也可以在PDF的使用pdf2text命令,然後搜索使用grep的結果。
對不起,這只是無稽之談! PDF通常使用壓縮對象,即使對象是未壓縮的,文本也只是部分用pdf格式的明文編寫。 – topskip 2010-04-22 12:12:03
嘛,PDF是一種二進制格式,就好像它們是文字
grep -a
的grep可以搜索二進制文件,也可以只使用pdftotext(附帶的xpdf)是這樣的:
pdftotext whee.pdf | grep pattern
你沒有提到你使用的操作系統,但在Mac OS X中,可以使用mdfind
命令行:
mdfind -onlyin search/directory/path "kind:pdf search text"
PDF是用於顯示頁面的對象的二進制轉儲。可能有一些可以grep的元數據,但實際的頁面文本位於Postscript流中,可能以各種方式進行編碼。它也不保證以任何順序。您需要將PDF視爲更像是一個矢量圖像文件而不是文本文件。
有一個簡短的文章在http://pdf.jpedal.org/java-pdf-blog/bid/27187/Understanding-the-PDF-file-format-text-streams
如果您pdftotext通過popplar包安裝說明中更詳細的PDF文本,那就試試這個perl腳本:
#!/usr/bin/perl
my $p = shift;
foreach my $fn (@ARGV) {
open(F,"pdftotext $fn - |");
while (<F>) { print "$fn:$_" if /$p/; }
close(F);
}
此工具pdfgrep會做工作。它有一個類似於grep的語法。在幾個文件中搜索只是一個簡單的shell腳本。例如:
$> ls Documents/*.pdf | xargs pdfgrep -n -H "system"
Documents/2005-DoddGutierrezRO-MAN1.pdf:1: designed episodic memory system
Documents/2005-DoddGutierrezRO-MAN1.pdf:1: how ISAC's episodic memory system is
Documents/2005-DoddGutierrezRO-MAN1.pdf:1: cognitive system employs a combination
....
- 1. grep的不.as文件正常工作
- 2. 上傳文件不能正常工作
- 3. 上傳文件不能正常工作
- 4. 上傳文件不能正常工作
- 5. Android開放pdf不能正常工作
- 6. HttpListener在Mono上工作正常嗎?
- 7. msvsmon在Win CE上工作正常嗎?
- 8. CCLabelBMFont FNT文件不能正常工作
- 9. .cshtml文件不能正常工作IIS
- 10. 屬性文件不能正常工作
- 11. *文件*變量不能正常工作
- 12. .bat文件不能正常工作
- 13. Java File.renameTo(文件)不能正常工作
- 14. .eslintignore文件不能正常工作
- 15. sendmail.php文件不能正常工作?
- 16. rvmrc文件不能正常工作
- 17. drupal jquery文件不能正常工作
- 18. Gulpfile.js文件不能正常工作?
- 19. gzipping powerpoint文件不能正常工作
- 20. 從文件不能正常工作
- 21. .htaccess文件不能正常工作7
- 22. C# - 在FTP上傳文件不能正常工作
- 23. C#Shell縮略圖在ppt文件上不能正常工作
- 24. 使用文件路徑不能正常工作的PDF文件連接陣列
- 25. 更換上確認上傳的文件不能正常工作
- 26. context.Response.Flush()不能在IE8上工作,但在IE9上正常工作
- 27. setDelegateQueue不能在iOS5上工作,但在iOS6上工作正常
- 28. htaccess不能在cPanel上工作,但在wampserver上工作正常
- 29. 在rails3上不能正常工作?
- 30. i18next在ejs上不能正常工作
我猜通過pdftotext搜索也是一個可行的選擇http://www.linuxjournal.com/video/searching-pdf-files-grep – Sam 2010-04-22 05:57:10
我認爲這取決於你的實際嘗試了很多實現這一點並不多說。如果你只是做一個用戶...如果我記得adobe acrobat允許你一次搜索多個pdf。 – xenoterracide 2010-04-22 06:08:05
感謝您的提示,我應該看到這個早期的Adobe Reader確實有一個功能,您可以通過它們的View - > Search選項在多個文檔中進行搜索。 我的印象是這個不存在,因此看着grep命令。 – Sam 2010-04-22 06:23:38