/var/lib/php5/sessions
我正在尝试查看我无权执行的目录中的文件内容ls
,因此我必须使用它sudo ls
来查看所有具有长名称的文件,我希望在键入时使制表符补全工作sudo vi longfilename
。
我尝试启动 vi 并执行:e
or:edit
但它也不起作用,当我按 tab 时,它显示的所有内容都是^I
.
我不想使用鼠标复制并粘贴那个长名称来执行 vi,这是我不喜欢的解决方法。
答案1
由于您的 sudo 身份验证是在完成命令行后进行的,因此除了使用 sudo 启动 shell 之外,我看不出在键入命令行时拥有 sudo 权限。
没有鼠标的解决方法:
sudo vi `sudo find /var/lib/php5/sessions -name *patternOfLongFile*`
sudovi
也许为此定义一个别名
答案2
六不进行制表符补全。 vim(和其他维克隆例如猫王、卑鄙)这样做。如果您碰巧使用安装了 vim 的机器(并且不是“最小”配置),那么您可以在命令中使用 vim 而不是“vi”。