Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.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
String 关于将变量和常量字符串合并的vim脚本_String_Vim_Concat - Fatal编程技术网

String 关于将变量和常量字符串合并的vim脚本

String 关于将变量和常量字符串合并的vim脚本,string,vim,concat,String,Vim,Concat,我正在~/.vimrc文件中编写一个函数,但遇到了一个问题。 我想连接一个变量和一个常量字符串,所以我这样做如下: let linux_version=system('uname -r') let host_kernel_dir= "/lib/modules/" . linux_version . "/build" echo host_kernel_dir 我想要的结果是/lib/modules/4.8.0-52-generic/build,但我得到了这个结果 "/lib/modules/4.

我正在~/.vimrc文件中编写一个函数,但遇到了一个问题。 我想连接一个变量和一个常量字符串,所以我这样做如下:

let linux_version=system('uname -r')
let host_kernel_dir= "/lib/modules/" . linux_version . "/build"
echo host_kernel_dir
我想要的结果是/lib/modules/4.8.0-52-generic/build,但我得到了这个结果

"/lib/modules/4.8.0-52-generic

/build "
因此,似乎添加了一个\n。那么如何消除这个问题呢?

这会从系统输出中删除换行符

这将从系统输出中删除换行符

对于那些熟悉perl的人,必须选择系统结果,我使用以下方法:

function! lh#os#system(cmd)
  return system(a:cmd)[:-2]
endfunction
对于那些熟悉perl的人,必须选择系统结果,我使用以下方法:

function! lh#os#system(cmd)
  return system(a:cmd)[:-2]
endfunction

另一个使用/proc伪文件系统的解决方案:


让linux_version=readfile'/proc/sys/kernel/osrelease'[0]

使用/proc伪文件系统的另一个解决方案:


让linux_version=readfile'/proc/sys/kernel/osrelease'[0]

我的vim版本是7.4我的vim版本是7.4