find . -name "jack.txt" -exec vim {} \; # 这个没有问题
s |xargs vim
Vim: Warning: Input is not from a terminal #终端卡了,应该是标准输入被截断了。
3 files to edit
失败:
find . -name "jackxiang.txt" |vim - #里面是文件名,不是读取文件。
=======================================
vim 本身没有直接从 stdin 读入信息。而 - 参数相当于一个开关,表示从标准输入读入信息。而管道的功能就是把前一个程序的 stdout 作为下一个程序的 stdin
Many commands use a hyphen (-) in place of a filename as an argument to indicate when the input should come from stdin rather than a file.
man vim
- The file to edit is read from stdin. Commands are read from stderr, which should be a tty.
Cmd | vim -
参考 VIM USER MANUAL 26.4 Using Vim from a shell script
cmd | vim -
- 表示vim开启从stdin读数据 #我想作为文件名传入呢???
====================================================================================
ls | xargs vim # 同时打开多个文件
:n [file_name] #切换文件
From:https://www.v2ex.com/t/61163
s |xargs vim
Vim: Warning: Input is not from a terminal #终端卡了,应该是标准输入被截断了。
3 files to edit
失败:
find . -name "jackxiang.txt" |vim - #里面是文件名,不是读取文件。
=======================================
vim 本身没有直接从 stdin 读入信息。而 - 参数相当于一个开关,表示从标准输入读入信息。而管道的功能就是把前一个程序的 stdout 作为下一个程序的 stdin
Many commands use a hyphen (-) in place of a filename as an argument to indicate when the input should come from stdin rather than a file.
man vim
- The file to edit is read from stdin. Commands are read from stderr, which should be a tty.
Cmd | vim -
参考 VIM USER MANUAL 26.4 Using Vim from a shell script
cmd | vim -
- 表示vim开启从stdin读数据 #我想作为文件名传入呢???
====================================================================================
ls | xargs vim # 同时打开多个文件
:n [file_name] #切换文件
From:https://www.v2ex.com/t/61163
作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:http://jackxiang.com/post/10206/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!
最后编辑: jackxiang 编辑于2019-5-27 14:51
评论列表