如何 cd 打开/自动完成以特定短语结尾的文件夹

如何 cd 打开/自动完成以特定短语结尾的文件夹

我有一个包含子文件夹的文件夹,其命名如下:

1122334 important things
1122335 less important things
1122336 notes
1122337 pictures of kittens

ETC

开头的数字是日期代码。如果由我决定,我会将日期代码放在最后,但事实并非如此。

在 bash 中,我想做这样的事情:

$ cd *pictu<tab>

并得到这个

$ cd 1122337\ pictures\ of\ kittens/

有没有一种简单的方法可以做到这一点,或者我可以放入一些东西.bashrc来实现这一点?

答案1

据我所知,没有办法使 bash 自动完成*pictu,但这里有一些解决方法:

  1. 不要使用TAB,只需cd在模式前后直接使用通配符:

    $ cd *pictu*
    

    这会将您移至名称包含 的第一个目录pictu

  2. 使用两个通配符和然后 TAB:

    $ cd *pictu*<TAB>
    

    这应该扩展到cd 1122337\ pictures\ of\ kittens/

  3. 使用另一个外壳。zsh有一个很酷的功能,你可以这样做:

    ➜ cd pictu<tab>
    

    并扩展到➜ cd 1122337\ pictures\ of\ kittens/.

相关内容