我想避免输入或复制粘贴完整路径。
理想情况下,我希望看到并能够做这样的事情:
$locate test.txt
1 /dir1/test.txt
2 /dir2/test.txt
$ vi !1
答案1
使用一些技巧:
set $(locate text.txt)
i=1 ; while [ "$1" ] ; do echo "\$$i $1" ; i=$(( i + 1 )) ; shift ; done
然后你就可以做了vi $1
。
答案2
你可以直接写
vi $(locate Test | head -n 1)
或者你可以创建一个 bash 函数,你可以调用它p test.txt 3
来从locate中找到第三行
p(){ vi $(locate $1 | head -n ${2:-1} | tail -1 ); }
如果您喜欢该功能,您可以将其放入您的~/.bashrc
或~/.bash_aliases
文件中......