Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从系统(…)中除去vim输出中的^@_Vim - Fatal编程技术网

从系统(…)中除去vim输出中的^@

从系统(…)中除去vim输出中的^@,vim,Vim,我正在尝试将系统调用的结果添加为我使用vim startify的一个插件的头。命令是: system('vim --version | head -1') 但是,当它被打印出来时,最后会有一个额外的字符:^@ 还有一个类似的问题,但它解决的是一个文件,而不是缓冲区。这应该能满足您的需要: system('vim --version | head -1 | tr -d "\n"') 请参阅$man tr.这将为您提供您想要的: system('vim --version | head -1 |

我正在尝试将系统调用的结果添加为我使用vim startify的一个插件的头。命令是:

system('vim --version | head -1')
但是,当它被打印出来时,最后会有一个额外的字符:^@


还有一个类似的问题,但它解决的是一个文件,而不是缓冲区。

这应该能满足您的需要:

system('vim --version | head -1 | tr -d "\n"')

请参阅$man tr.

这将为您提供您想要的:

system('vim --version | head -1 | tr -d "\n"')
请参阅$man tr.

只需咀嚼它:system'Whatch'[:-2],或者,如果您喜欢更健壮的东西,如果换行符丢失,不会出现错误,您可以应用:substitutesystem\u result,\n\\\+$

请注意,与tr不同,此解决方案适用于所有平台。这就是我们在Perl中使用chomp函数时所做的。

只要chomp它:system'whatever'[:-2],或者,如果您喜欢更健壮的东西,如果换行符丢失不会出现错误,您可以应用:substitutesystem\u result,\n\\\+$


请注意,与tr不同,此解决方案适用于所有平台。这就是我们在Perl中使用chomp函数时所做的。

在Vim 8或7.4的最新版本中:

get(systemlist('vim --version'), 0)

对于Vim 8或最新的7.4版本:

get(systemlist('vim --version'), 0)

我们并不需要get,因为systemlist总是会返回一些东西。systemlist'vim-version'[0]就足够了。不管怎么说,很高兴知道systemlist在新行后面大吃一惊。谢谢。系统列表将始终返回一些内容。-除非出于任何原因返回空列表。那么…[0]是一个错误:我的错误。我在考虑这个特殊情况,要么找不到vim,要么vim-version应该返回一些东西。在一般情况下,您是完全正确的。我们并不需要get,因为systemlist总是会返回一些内容。systemlist'vim-version'[0]就足够了。不管怎么说,很高兴知道systemlist在新行后面大吃一惊。谢谢。系统列表将始终返回一些内容。-除非出于任何原因返回空列表。那么…[0]是一个错误:我的错误。我在考虑这个特殊情况,要么找不到vim,要么vim-version应该返回一些东西。在一般情况下,你是完全正确的。