我正在编写一个用于文本处理的 bash 脚本,其中此命令给我错误:
sed -e "/\<$7\>/ /\<$5\>/$6/" < "$2/$1" > "file.tmp"
这会产生以下错误:
> Unrecognized command: /\<key\>/ /\<Hi\>/Hello/
我究竟做错了什么?
变量的值与错误中的值相同。
“$2/$1”是文件路径和文件名
答案1
让我看看是否明白你的问题。如果文件中的行与 $7 匹配,您想用 $6 替换 $5 吗?你那里缺少一个's'
sed -e "/\<'$7'\>/s/\<'$5'\>/'$6'/" < "$2/$1" > "file.tmp"