
Im Bash-Handbuch steht für Alias:
Es gibt keinen Mechanismus zur Verwendung von Argumenten im Ersetzungstext wie in csh. Wenn Argumente benötigt werden, sollte eine Shell-Funktion verwendet werden (siehe Abschnitt 3.3 [Shell-Funktionen], Seite 17).
Was bedeuten die beiden Sätze?
"Argumente im Ersatztext verwenden" scheint nicht das Folgende zu bedeuten, was erfolgreich ist
$ alias foo="echo bac"
$ foo
bac
$ foo hello
bac hello
Antwort1
Ich nehme an, der Wortlaut ist nicht perfekt, es sei denn, man nimmt ihnsehrwörtlich. Bash ersetzt keineAliasText mit Argumenten; es wirdAnhängenArgumente zum Text, wie Sie gesehen haben. Dies steht im Gegensatz zuCSH-Aliasedas erweitert Argumenteinnender Ersatztext.
Der zweite Satz ergibt sich meiner Meinung nach aus der obigen Einschränkung und empfiehlt flexiblere Funktionsdefinitionen gegenüber simplen Aliasnamen.