每当我在vim命令行中键入以下内容::read !readlink {somedir}
,它会将输出发送到bash我从vim启动,而不是发送到vim缓冲区。 其实,我想实现的是获取文件的绝对路径,而编辑用vim一个文件,并没有作出任何错别字吧。VIM中的一些bash命令将输出发送到bash而不是VIM
在另一方面,每当我使用例如::read !ls
,它打印在我目前使用vim的缓冲区中的输出。
为什么会这样,我应该怎么办? 谢谢!
每当我在vim命令行中键入以下内容::read !readlink {somedir}
,它会将输出发送到bash我从vim启动,而不是发送到vim缓冲区。 其实,我想实现的是获取文件的绝对路径,而编辑用vim一个文件,并没有作出任何错别字吧。VIM中的一些bash命令将输出发送到bash而不是VIM
在另一方面,每当我使用例如::read !ls
,它打印在我目前使用vim的缓冲区中的输出。
为什么会这样,我应该怎么办? 谢谢!
当标准错误是给问题,您可以使用2>&1
。
命令行会与所有REQ的无聊长。当你经常需要这个时,采取另一种方法。
首先制作一个脚本输出满足您的要求,将给予正确的路径。 该脚本可以在路径中使用查找,定位,readlink或某些AI解析错误。之后,你可以使用
:r !myscript path
而当你经常使用这个现实,把它分配给像
nnoremap <F1> :r !myscript
"Off topic: I like the next one for testing scripts
nnoremap <F9> :w<Enter>:!%:p<Enter>
你到底要什么功能键?你想哟找到当前文件(不'给出的相对路径!:回声“%”')的完整路径,包括在你的文件(作为一种头,而你想的东西像目前日期也在标题中)?或者你想查找所有类型的文件?你可以用'locate'来做这个吗? –
我想获得各种文件或目录的完整路径。这是因为有时当我配置某些东西时,我必须给文件或目录提供绝对路径,并且在输入路径时出现错误的可能性很大,或者例如。错过之间的目标。 – ZB1900