Chciałbym wiedzieć, jak mogę pisać, jeśli warunki w skrypcie bash w jednym wierszu.
Na przykład, jak mogę to napisać w jednym wierszu, a następnie umieścić kolejny taki sam w następnym?
if [ -f "/usr/bin/wine" ]; then
export WINEARCH=win32
fi
Pytam o to, ponieważ mam sporo aliasów w moim .bashrc i mam ten sam .bashrc (zsynchronizowany) w wielu systemach, ale nie potrzebuję wszystkich aliasów w każdym systemie. Wstawiam większość z nich do instrukcji if i wszystko działa teraz pięknie, ale zajmują dużo miejsca, 3 linie każda plus pusta linia między nimi (lubię mieć je łatwo widoczne)
Użyję tej techniki również do zmiennych środowiskowych.
linux
command-line
bash
bashrc
Horațiu Mlendea
źródło
źródło
[ -f "/usr/bin/wine" ] && export WINEARCH=win32
Odpowiedzi:
Napisałbyś to w ten sposób:
Pamiętaj, że można to również napisać (zgodnie z sugestią @glennjackman):
źródło
Zauważyłem też, że po prostu wpisując dowolny kompleks, jeśli w przeciwnym razie naciśniesz, naciśnij klawisz Enter, a następnie po jego wykonaniu wystarczy nacisnąć strzałkę w górę. Wiersz poleceń oczywiście powtórzy ostatnie wpisane polecenie, ale w tym przypadku umieszcza je wszystkie w jednym wierszu, zgodnie z wymaganiami. Jest to sposób na oszukiwanie, ale jest skuteczny.
źródło