web-dev-qa-db-fra.com

Comment exécuter une commande d'alias en mode non interactif de bash

Je veux exécuter une commande d'alias en mode non interactif de bash. Mais Ubuntu semble ignorer BAHS_ENV. Comment puis-je le faire fonctionner? la est une commande d'alias. Et j'ai testé dans d'autres Linux. c'est bon travail. Juste Ubuntu ne fonctionne pas.

BASH_ENV=~/.profile bash -O expand_aliases -c la

4
Payne Chu

je viens de le découvrir parce que le fichier .bashrc d'origine fourni par Ubuntu contient du code comme ci-dessous pour empêcher le script de s'exécuter en mode non interactif. alors pourquoi mon alias ne fonctionne pas. Son travail nécessite maintenant de déplacer les alias plus haut que ce bloc

#If not running interactively, don't do anything
case $- in
 *i*)
 ;; *)
 return;;
esac
2
Payne Chu