J'essaie de créer un alias bash, où l'alias lui-même a un espace.
L'idée est que l'alias (ie con
) représente sudo openvpn --config /path/to/my/openvpn/configs/
. Ce qui se traduit par une commande lisible, lorsque l' con
alias est utilisé.
c'est à dire: `con uk.conf` == `sudo openvpn --config /path/to/my/openvpn/configs/uk.conf`
Je comprends que je ne peux pas déclarer l'alias comme ceci:
con ="sudo openvpn --config /path/to/my/openvpn/configs/"
. Les fonctions bash fonctionneraient-elles dans ce scénario? Je n'en ai jamais entendu parler, mais lors de la recherche d'une solution à ce problème mineur.
"$@"
au lieu de"$1"
pour que les arguments suivants soient également transmis. (Commentaire général, peut-être sans rapport avec le cas spécifique ici)com uk.conf -something else
se traduiraitsudo openvpn --config /path/to/my/openvpn/configs/uk.conf -something else
?$@
contient tous les paramètres donnés. Voir Quelle est la différence entre $ * et $ @? .