Я хотел бы знать, как я могу написать, если условия внутри сценария Bash в одной строке.
Например, как я могу написать это в одной строке, а затем поместить следующую, как это, в следующую?
if [ -f "/usr/bin/wine" ]; then
export WINEARCH=win32
fi
Я спрашиваю об этом, потому что у меня есть несколько псевдонимов в моем .bashrc, и у меня есть один и тот же .bashrc (синхронизированный) в нескольких системах, но мне не нужны все псевдонимы в каждой системе. Я поместил большинство из них в операторы if, и теперь все работает прекрасно, но они занимают много места, по 3 строки плюс пустая строка между ними (мне нравится, когда их легко увидеть)
Я также буду использовать эту технику для переменных среды.
linux
command-line
bash
bashrc
Орасю Млендеа
источник
источник
[ -f "/usr/bin/wine" ] && export WINEARCH=win32
Ответы:
Вы бы написали это так:
Обратите внимание, что это также может быть написано (как предложено @glennjackman):
источник
Я также обнаружил, что просто набрав любую сложную команду if then else, нажмите ввод, а затем, после того, как она выполнится, просто нажмите стрелку вверх. Конечно, командная строка будет повторять последнюю набранную команду, но в этом случае она помещает все это в одну строку, как вам нужно. Это обман, но он эффективен.
источник