aliasの中に引数を入れれるか? 2007/02/01

.bash_profileの中にエイリアスを設定してその中に引数をとりこみたい。


例えばcsh系では、含めることができる。
ech 引数とうつと、test引数と表示させるとする。
% alias ech 'echo test¥!:1'

cshではこれでうまくいく。

bashでは、
$ alias ech="echo test$1"

とすると、test 引数となる。
testと引数の間に、スペースがはいる。

観察していると、引数の展開のしかたがどうも思い通りではない。

bashではaliasを使うのではなく、関数で定義したほうがいいっぽい。

$ ech() { echo test$1; }


これだと期待した結果になる。


参考:
http://www.cas.cmc.osaka-u.ac.jp/~paoon/Lectures/2005-7Semester-AppliedMath7/04.html

: