2011-01-07 71 views
2

我想在一個目錄下的所有文件運行這個sed腳本:桑達不find命令工作

sed.s:

/<constants>/a\ 
<const type="profElem" name="mission_description" value="NCEP and NCAR Reanalysis Monthly Means and Other Derived Variables"/> 

但每當我運行:

find . -exec sed -f sed.s -i {} \; 

我得到的錯誤:

sed: -i may not be used with stdin 

我如何得到這個工作?

+0

看到文件列表會很有趣。你可以發佈`find的結果嗎? -exec echo {} \;` – 2011-01-07 22:52:16

回答

2

看來您的sed版本要求您將備份的擴展名傳遞給-i選項。如果您對自己的命令感到非常自信,則可嘗試給它一個零長度的擴展名,例如:

find . -exec sed -f sed.s -i '' {} \; 
+0

啊,我錯過了引號...... – victor 2011-01-07 22:51:33