我的意思是一些命令subtitutions。在過去,我能夠使用猛砸,反引號時,例如我不得不線下載的,其曾在一個文本文件中已經已經收集的文件/鏈接,線路列表:如何將相同的命令應用於Bash中的文件列表?
wget `cat list.txt`
甚至megadl到從大型下載:
megadl `cat list.txt`
不幸的是,它不能正常工作,因爲某些原因。我將整個文件列表看作是由空格分隔的一長串文本,而不是換行符。
我經常寫小腳本,它只能處理一個參數,它是一個文件,而不是文本列表中列出的文本文件。當然,我不想修改我的腳本,因爲Bash提供了這種幫助機制,將相同的命令應用於文件列表,例如在「ls -1 * .jpg」的輸出上。我有一個名爲「cgamma」的小型實用程序,它將伽馬校正應用於圖像文件,同時保持顏色飽和度(它簡單地稱爲imagemagick的mogrify)。我想用它在許多圖像文件,像這樣:
cgamma `ls -1 *.jpg` 1.3
我知道我可以使用一個for循環一行程序,但它更打字:
for $i in $(ls -1 *.jpg);do cgamma $i 1.3;done
所以我的問題是,我如何正確使用反引號,命令替換,處理文件列表,並將相同的命令應用於所有這些命令?
THX,我接受xargs回答是因爲它對我來說是新的,我不知道這個實用程序有什麼好處。 – Konstantin