0

我需要$EDITOR用sed替换。可以在这里看到一个示例:
使用 bash 脚本中的 virsh 更改 Virbr0 的 XML 文件中的 dhcp IP 范围

我想在使用 sed 修改某些内容后打开 Vim,以允许用户查看文本并添加修改。我怎么会做这样的事情?

我试过这个,但显然它对我不起作用。

EDITOR='vim - sed -i s/foo/bar/g' virsh net-edit default

另外,我尝试用打开临时文件的自定义脚本替换 sed。然后,经过修改后,我尝试使用该临时文件打开 vim,但我得到了:

Vim: Warning: Output is not to a terminal

我怎样才能完成这样的任务?

4

1 回答 1

0

你可以为它写一个脚本:

cp $1 /tmp/tempfile
sed 's/foo/bar/g' < /tmp/tempfile > $1
vim $1

然后将该脚本设置为编辑器命令。

另一种解决方案是使用 vim 中的命令,这些命令非常类似于 sed。

EDITOR="vim -c %s/foo/bar/g"

也应该想要你想要的。

于 2013-05-30T17:31:31.640 回答