Есть ли лучший способ написать bash-функцию, эквивалентную псевдониму, и работает ли она во всех случаях? Кажется, все в порядке (редактировать: это не так).
alias g="git"
g(){ git `echo $@ |xargs`;}
typeset -f g
Несколько проблем с вашим подходом:
echo
не надежно ;"$@"
, а не $@
, последний будет нарушать код, если вы передадите аргумент с пробелами (например, "multiple words"
).Правильный путь:
g(){ git "$@"; }