昨天我问了一个alias的问题,就是怎么实现:
cd 目录 = cd 目录 ; ls
大家都认为不能直接用alias,需要自己写脚本
但是今天我努力找到了.cshrc,打开看发现是使用
alias cd 'cd \!* ; echo $cwd ; ls'
在csh中这是可以实现的(因为我用过),但是在bash中alias cd='cd \!* ; echo $cwd ; ls',发现不行啊?
继续问alias的问题
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
- jcauchy
- 帖子: 22
- 注册时间: 2008-07-18 16:31
- eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙
- JangMunho
- 帖子: 1347
- 注册时间: 2006-01-18 12:55
- 来自: 也许真的没有人理解
- jcauchy
- 帖子: 22
- 注册时间: 2008-07-18 16:31
- BigSnake.NET
- 帖子: 12522
- 注册时间: 2006-07-02 11:16
- 来自: 廣州
- 联系:
-
- 帖子: 14
- 注册时间: 2008-07-22 9:56
bash的alias不支持在替换文本中使用参数,如果需要的话,可以使用bash的函数。
不过说实话,这种trick没什么意思。
代码: 全选
function mycd() {
if cd "$1"; then
echo "$PWD"
ls
fi
}
alias cd=mycd