Lorsque je mets sudo "export PROXY_LOCAL_NET_IP = 10.113.35.108", j'obtiens l'erreur suivante:
sudo: export: command not found
Que dois-je faire pour résoudre ce problème?
Lorsque je mets sudo "export PROXY_LOCAL_NET_IP = 10.113.35.108", j'obtiens l'erreur suivante:
sudo: export: command not found
Que dois-je faire pour résoudre ce problème?
Réponses:
Vous ne pouvez pas utiliser les commandes internes de shell avec sudo
. Seule la commande correspondant aux fichiers valides sera exécutée sudo
. La syntaxe correcte pour sudo est:sudo [options] [filename]
L'exportation est une commande interne (intégrée) du shell Bash et peut-être aussi une autre.
Notez également que cela n'a aucun sens de faire l'action de export
via sudo
, cela doit être fait sous votre ID utilisateur pour être applicable à votre shell et à ses processus enfants.
Si vous passez à l'utilisateur root pour ce faire, vous devrez effectuer le reste de votre opération en tant que root: ce n'est pas recommandé . Parce que si vous quittez le shell racine, l'affectation effectuée par export
sera perdue.
Devenez root avec sudo -s
et votre mot de passe.
Entrez ensuite votre commande sans sudo: export PROXY_LOCAL_NET_IP = 10.113.35.108`
Vous pouvez utiliser l'option sudo -E pour utiliser la variable exportée dans une commande sudo
La question stackoverflow suivante contient des détails supplémentaires sur la façon d'utiliser la variable d'environnement avec sudo