我最近陷入了一个困境,我在一个文件夹中,我想要cd一个子目录文件夹。只有一个文件夹,在这个文件夹里面,而且是一个很长的名字。
Home (I am here)
|
|
--> /reallylongnamefolder
Run Code Online (Sandbox Code Playgroud)
有没有办法进入该文件夹而不是输入:
cd reallylongnamefolder
Run Code Online (Sandbox Code Playgroud)
mas*_*lma 39
我建议要么输入前几个字母,然后按tab. Bash 具有非常有用的自动完成功能。如果它只是当前路径中的目录,只需按下tab将填充整个目录。
输入cd并按tab两次将显示当前目录中的所有选项。
tab 通常在 bash 中非常有用,因为您可以通过一两次按键访问几乎所有的可执行文件。
cd *如上所述,仅当目录位于列表中且未隐藏时才有效。如果在您的目录之前按字母顺序排列文件,cd则根本不会更改您的目录。
Ari*_*osh 20
我想我真的想通了
cd *
cd */
Run Code Online (Sandbox Code Playgroud)
但是如果有多个文件和一个文件夹,我还没有测试过!
正如@Rinzwind在评论中提到的那样!
假设您有三个长文件夹:
/thisislongfolder1
/thisislongfolder2
/thisislongfolder3
Run Code Online (Sandbox Code Playgroud)
如果你输入文件的第一个字母,然后点击tab它会自动完成文件名!疯狂的事情!
所以在上面的例子中,你可以输入:t tab,它会尽可能多地自动完成:(cd thisislongfolder然后自己输入数字)。
或者你可以做cd t*1将带你进入thisislongfolder1
谢谢林兹温德!
use*_*205 18
cd $(ls -d */|head -n 1)
Run Code Online (Sandbox Code Playgroud)
ls -d */列出目录,head -n 1给出此列表中的第一个。