2011-01-09 65 views
3

我正在使用ImageMagick從命令行執行一些圖像處理,並希望對foo.txt中指定的文件列表進行操作。從這裏的說明:http://www.imagemagick.org/script/command-line-processing.php我看到我可以使用前綴爲@的文件中的文件名引用。當我運行類似:使用ImageMagick的文件名引用時出現「無法打開圖像」錯誤

蒙太奇@ foo.txt的output.jpg

一切正常,只要foo.txt的是在當前目錄。然而,當我試圖通過運行訪問跳回到bar.txt在不同的目錄:

蒙太奇/some_directory/@bar.txt output2.jpg

我得到:

蒙太奇:無法打開圖像 /some_directory/@bar.txt:沒有這樣的文件 或目錄@ blob.c/OpenBlob/2480。

我認爲這個問題是我的語法,但我不知道該怎麼改變它。任何幫助,將不勝感激。

回答

0

我沒試過指導IM拉從一個文件中的文件列表,但我喜歡這樣的命令行上指定多個文件:

gm -sOutputFile=dest.ext -f file1.ppm file2.ppm file3.ppm 

你能拉該文件的內容到一個變量,然後讓shell擴展該變量?

+0

我有一個非常大量的文件在不同的目錄(1K +)我合併在一起,所以我不希望將它們列入文件並指向該文件似乎是最合理的做法。 – ryan

1

很舊的條目,但它似乎比較明顯,你需要完整的路徑之前把@:

montage @/some_directory/bar.txt output2.jpg 
1

隨着ImageMagick的6.5.4-7 2014年2月10日的,路徑不支持與@語法。 @文件必須位於當前目錄中,並且僅由名稱標識。

相關問題