1

私は2つの変数を持っています

mypath=c:\tmp\silent-install
replace=c:/tmp/myapp

このコマンドを試しましたが、ファイル内の文字列が置き換えられません

sed -i "s#$mypath#$replace#" file.txt

助けていただけますか?

4

2 に答える 2

0

最初の変数を次のように変更します。

mypath='c:\\tmp\\silent-install'
于 2013-05-24T11:28:51.840 に答える
0

文字列にバックスラッシュがあるため、mypath変数の割り当てに問題があります。

この方法を試してください:

mypath='c:\\tmp\\silent-install'

その後、sedワンライナーは正常に機能するはずです。

テスト:

kent$  mypath='c:\\tmp\\silent-install'

kent$  replace=c:/tmp/myapp

kent$  cat file
c:\tmp\silent-install

kent$  sed -i "s#$mypath#$replace#" file

kent$  cat file
c:/tmp/myapp
于 2013-05-24T11:26:35.837 に答える