我正在编写以下脚本:
v="1,pop";
sed "$v/d" dir/file1
它给了我这个错误:
char 3: unexpected `,'
如何解决这个问题?注意:$v
的值无法控制。
答案 0 :(得分:0)
答案 1 :(得分:0)
您以错误的方式使用sed
。
$ v="1,pop";
$ cat file
1,pop
Suku
JohnGeorge
stackoverflow
serverfault
$ sed '/'$v'/d' file
Suku
JohnGeorge
stackoverflow
serverfault
$ sed "/"$v"/d" file
Suku
JohnGeorge
stackoverflow
serverfault
如果要在sed
中替换bash变量,则需要用上面显示的引号括起来。此外,如果您要对文件进行修改,则需要将sed
与-i
一起使用。
答案 2 :(得分:0)
在脚本中使用这种方式
V = “1,流行”
sed“/ ^ $ v $ / {
d
}“dir / file1