2012-04-03 63 views
5
alias bp="cat [email protected] > [email protected]" 

我的第二个想法是:别名在bash不工作

alias bp="cp [email protected]{,.BACK}" 

所以我希望能有备份的命令文件。 它不会引发任何错误,但它不起作用。

+0

它会在您定义别名时展开。单引号可能会有所帮助,但我不确定您可以使用没有函数的别名来表达您想要的内容。 – 0xC0000022L 2012-04-03 17:38:27

+0

[使bash别名参数?]的可能重复(http://stackoverflow.com/questions/7131670/make-bash-alias-that-takes-parameter) – l0b0 2012-04-04 14:24:00

回答

12

别名纯粹是文本替换。如果要使用或操纵参数,则需要创建一个函数:

bp() { 
    for file; do 
     cp -i "$file" "$file".BACK 
    done 
}