2009-04-15 46 views

回答

-1

我會用:

ls *Exam* | xargs open 
+0

@diciu:謝謝!你的命令工作得很好。 – 2009-04-15 11:47:58

1

喜歡的東西

acroread *Exam*.pdf 

應該工作。這與任何具有「考試」的字符串匹配,並以「.pdf」結尾。這還假定你有一個名爲「acroread」知道如何閱讀PDF命令:S,可能會或可能不會針對Mac OS X是真的

+0

在Mac OS X上,您可以使用'open'命令打開任何文件。對於PDF文件,默認情況下它將啓動Preview.app。 – mouviciel 2009-04-15 11:37:29

7
find . -name "*exam*" -exec <name of pdf reader executable> {} \; 
+0

您可能需要'-iname`而不是`-name`,以防情況發生變化。 – vezult 2009-04-15 11:35:00

4
  • 不要分析ls。它的輸出是不可靠的,只能看(用於人類解析)。請參閱http://mywiki.wooledge.org/ParsingLs
  • 請勿使用xargs。它破壞你的數據嘗試變得更聰明。您的文件名中有空格或引號?你可以確定它會爆炸。

爲了xargs的行爲,你必須竭盡全力:

printf '%s\0' *Exam* | xargs -0 open 

是的,這是頗爲曲折。請繼續閱讀。

find解決方案雖然準確,但仍是遞歸的(可能是您想要的),但在輸入提示時也有點多。

find . -name '*Exam*' -exec open {} + 

你可以讓所有的,很多通過記住open在Mac OS X中採用多個參數就好了(這正是xargs一樣),所以這只是罰款,在當前目錄中打開的所有文檔更容易包含單詞Exam

open *Exam* 
相關問題