【发布时间】:2012-09-24 19:37:47
【问题描述】:
我正在尝试使用此命令从命令行在 vim 中打开多个文件。出于某种原因,我遇到了错误,如下所示。
$ find . -name edit.html.erb \
| perl -pi -e 's/^..//' \
| perl -pi -e 's/\n$/ /' \
| vim
当我在没有“| vim”的情况下运行它时:
$ find . -name edit.html.erb \
| perl -pi -e 's/^..//' \
| perl -pi -e 's/\n$/ /'
得到这个输出:
addresses/edit.html.erb claims/edit.html.erb emails/edit.html.erb owners/edit.html.erb packages/edit.html.erb users/edit.html.erb vessels/edit.html.erb voyages/edit.html.erb %
我收到一个错误,可能与输出末尾的“%”标记有关。
这是输出和错误:
Vim: Warning: Input is not from a terminal
Vim: Error reading input, exiting...
Vim: preserving files...
Vim: Finished.
我该如何解决这个问题?由于我是新手,不确定是哪个部分导致了错误,但我们将不胜感激!
【问题讨论】:
-
%不是您的提示符,不是输出的一部分吗? -
是的,这是我的提示。 (或者至少在我使用 sed 时会发生同样的事情。)我试图打开 rails 项目中的所有编辑视图,因为我需要向所有这些视图添加一些内容。因此,找到首先过滤掉我的选择。