0

我的代码如下所示;它不工作。

line_number=$1;
variable1=$2;

sed '\$line_number c\
\$variable1' file > tmp.out

如果我像下面这样写,那么它的工作原理。您能否建议我如何使上述代码运行?

sed '1 c\
<replace>abc</replace>' file > tmp.out
4

2 回答 2

1

你可以试试这个

#!/bin/bash

line_number=$1;
variable1=$2;

sed "$line_number c\
$variable1" file > tmp.out

如果你想在 sed 中使用你的变量值,那么你可以使用"(双引号)。然后,它将被shell解释。

于 2013-07-09T04:55:05.173 回答
1

将变量从单引号中取出,变量前不需要任何反斜杠:

sed "$line_number"' c\ 
'"$variable1" file > tmp.out
于 2013-07-09T04:46:49.150 回答