Vim:`cd`到存储在变量中的路径
发布时间:2020-12-16 01:23:30 所属栏目:安全 来源:网络整理
导读:我对 vim很新鲜,我很难理解一些使用 vim脚本的细微之处.具体来说,我无法使用期望使用无引号字符串的命令(有这个名称吗?).例如 cd some/unquoted/string/path 问题是我想传递一个变量,但是调用 let pathname = 'some/path'cd pathname 将尝试将当前目录更改
我对
vim很新鲜,我很难理解一些使用
vim脚本的细微之处.具体来说,我无法使用期望使用无引号字符串的命令(有这个名称吗?).例如
cd some/unquoted/string/path 问题是我想传递一个变量,但是调用 let pathname = 'some/path' cd pathname 将尝试将当前目录更改为“pathname”而不是“some / path”.这样做的一个方法是使用 let cmd = 'cd ' . pathname execute cmd 但这似乎有点迂回. This StackOverflow question实际上使用带有变量的cd,但在我的系统上不起作用(“a:path”被视为如上所述的路径). 我使用cd作为一个具体的例子,但这个行为并不是唯一的cd;例如,编辑命令也以这种方式行事. (这种类型的命令有名字??吗?)
将文件名作为参数的许多基本命令支持反向语法:
command `shell command` 要么 command `=vim_expression` 所以你的例子可能写成 cd `=pathname` 如果您在受控环境中运行.您不能在插件中使用此变体,因为a)有可能以您的方式进行的& wildignore设置:set wildignore = * | cd = pathname将使cd失败,无论路径名中存储什么内容,以及b)如果路径名包含换行符将被分成两个或多个目录.因此,您应该用于您打算分享的任何代码片段 execute 'cd' fnameescape(pathname) . 请注意,您不能使用执行“cd”路径名,因为它不关心路径名中的特殊字符(例如,空格). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- angularjs – 如何仅为单元测试激活debugInfoEnabled?
- twitter-bootstrap – 如何让Bootstrap图标在深色背景上工作
- 如果在文件末尾没有换行符,如何使用`while read`(Bash)读取
- twitter-bootstrap-3 – 设置BS3 input-group-addon的宽度
- Scala:我可以依靠Set中的项目顺序吗?
- vim 加载大文件的缓慢的问题
- 一、Axis2 WebService开发准备工作
- BPM 是与非 -- 什么是BPM,如何辨别是否BPM产品,以及如何选
- WebService框架WebService-CXF (二) --参考传智播客视频
- Bootstrap图像调整为小屏幕调整大小,不起作用