Je voudrais savoir comment écrire des conditions à l'intérieur d'un script bash sur une seule ligne.
Par exemple, comment puis-je écrire ceci sur une seule ligne, puis en mettre une autre comme elle sur la suivante?
if [ -f "/usr/bin/wine" ]; then
export WINEARCH=win32
fi
Je pose cette question car j'ai plusieurs alias dans mon .bashrc et j'ai le même .bashrc (synchronisé) sur plusieurs systèmes, mais je n'ai pas besoin de tous les alias sur chaque système. Je mets la plupart d'entre elles à l'intérieur d'instructions if, et tout fonctionne à merveille maintenant, mais elles prennent beaucoup d'espace, 3 lignes chacune plus la ligne vierge entre elles (j'aime les avoir facilement visibles)
J'utiliserai également cette technique pour les variables d'environnement également.
linux
command-line
bash
bashrc
Horațiu Mlendea
la source
la source
[ -f "/usr/bin/wine" ] && export WINEARCH=win32
Réponses:
Vous l'écririez comme tel:
Notez que cela pourrait également être écrit (comme suggéré par @glennjackman):
la source
Je trouve également que simplement taper n'importe quelle commande complexe if if else, appuyez sur Entrée, puis après son exécution, appuyez simplement sur la flèche vers le haut. La ligne de commande répétera la dernière commande tapée bien sûr, mais dans ce cas, elle mettra le tout sur une seule ligne selon vos besoins. C'est une façon de tricher, mais c'est efficace.
la source