/ / using xargs pour passer une variable à la commande alias - linux, bash, alias, xargs

utiliser xargs pour passer une variable à la commande alias - linux, bash, alias, xargs

J'essaie d'écrire une seule ligne qui crée un alias "cd =" cd nom_rép "" qui changera de répertoire en ce nom

pwd | xargs -i alias cd{}="cd $PWD"

mais je reçois:

xargs: alias: No such file or directory

est-ce que alias ne peut pas être joué avec xargs ou est-ce que je n'utilise pas xargs correctement?

Réponses:

2 pour la réponse № 1

alias est un shell intégré. xargs nécessite une commande externe à exécuter. Normalement, vous pouvez lancer un nouveau shell dans xargs pour interpréter les éléments intégrés ou les mots-clés:

pwd | xargs -i bash -c "alias cd{}="cd $PWD""

mais c’est inutile dans ce cas, car le pseudonyme ne vivrait que dans le shell que vous exécutez xargs, pas dans l'actuel.

De plus, un alias ne peut pas être nommé /home/user. Peut-être que tu voulais dire

... alias cd="cd {}"

Utilisation pushd et popd se rappeler le répertoire en cours et y revenir plus tard.