簡體   English   中英

SED命令在替換字符串時給出錯誤

[英]SED command giving error while replacing a string

我需要用文件中的另一個字符串替換一個字符串。

我在下面一行文件。

tibco.env.LD_LIBRARY_PATH %TPCL_HOME%/lib/httpclient_3.0:%TPC
L_HOME%/lib:%RV_HOME%/lib:%TRA_HOME%/icjava/6.2/lib:%LD_LIBRARY_PATH%

我需要將“ tibco.env.LD_LIBRARY_PATH”替換為“ tibco.env.LD_LIBRARY_PATH%RV_HOME%/ lib / 64:”

最后那條線應該是

tibco.env.LD_LIBRARY_PATH %RV_HOME%/lib/64:%TPCL_HOME%/lib/httpclient_3.0:%TPC
L_HOME%/lib:%RV_HOME%/lib:%TRA_HOME%/icjava/6.2/lib:%LD_LIBRARY_PATH%

我嘗試使用以下命令,但出現錯誤sed:-e表達式#1,字符66:`s'的未知選項

sed -i s/"tibco.env.LD_LIBRARY_PATH "/"tibco.env.LD_LIBRARY_PATH %RV_HOME%/lib/64:"/ bwengine.tra

有人可以幫助您解決此問題。

如果要替換的模式或替換字符串包含斜杠,請使用其他分隔符,例如=

s="tibco.env.LD_LIBRARY_PATH "="tibco.env.LD_LIBRARY_PATH %RV_HOME%/lib/64:=

您可能會考慮使用&作為匹配的字符串,這將減少sed命令的長度。

sed 's!tibco.env.LD_LIBRARY_PATH !&%RV_HOME%/lib/64:!' file

請參閱以下網址: http : //www.grymoire.com/unix/Sed.html#uh-3

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM