我知道可能没有简单的方法可以做到这一点,但我想我可能会把它放在那里。我有一个目录,其中包含我处理的每个客户的子目录。我希望能够在计算机上的任何位置键入该客户目录名称,然后切换到该目录。换句话说:
/dir/customers/
/dir/customers/customer1/
/dir/customers/customer2/
/dir/customers/customer3/
我希望将customer1,customer2和customer3都添加到我的〜/ .bashrc文件中,每当我创建一个新客户时,它都会更新以添加它。
任何参赛者?
答案 0 :(得分:7)
如果你在〜/ .bashrc中添加这段代码:
for i in /dir/customers/*
do
alias $(basename $i)="cd '$i'"
done
它将为customer1,customer2,customer3(/ dir / customers /的所有子目录)设置别名,每次添加新客户(例如:customerN)时,它的别名customerN将自动添加到您登录。< / p>
例如:alias customer1是cd / dir / customers / customer1,别名customer2是cd / dir / customers / customer2等......
答案 1 :(得分:2)
值得一提的另一种选择:你可以export CDPATH=/dir/customers
然后如果你在任何地方并输入cd David_Johnson
,如果存在这样的目录,你将被带到/dir/customers/David_Johnson
。
这样做的好处是你刚刚添加了David_Johnson
,并且不需要为你的.bashrc
提供资源就可以了(我知道它不是别名,但似乎提供了一点灵活性)