Условно-экспортная переменная командной строки

Если я убегу

export COMMAND=nonexistentcommand && which $COMMAND >/dev/null || \ (echo "download filewithcommand.sh" && export COMMAND=./filewithcommand.sh) echo "command: $COMMAND" 

я получил

 download filewithcommand.sh command: nonexistentcommand 

Но я думаю, что это должно быть

 download filewithcommand.sh command: ./filewithcommand. 

Что случилось с этим предложением?

  • Переменная среды с равным знаком и оператор &&
  • Можете ли вы выполнить функцию Bash с помощью команды `at`?
  • Почему расположение переменных Enviroment сильно отличается?
  • Кто настраивает http_proxy?
  • Как определить, где определена переменная среды?
  • Использование Crontab -e с нестандартным редактором с ограниченной оболочкой (не экспортировать переменную или запустить редактор)
  • как использовать http proxy в терминале
  • Почему экспорт не влияет на дочерние оболочки?
  • One Solution collect form web for “Условно-экспортная переменная командной строки”

    COMMAND установлен в nonexistentcommand и это результат, который вы получаете. Нормальный.

    Вы устанавливаете COMMAND в какое-то другое значение, но оно находится в подоболочке (заключено в круглые скобки), поэтому оно не влияет на среду родительской оболочки. Вы хотели использовать { braces } (который не вилка подоболочки) вместо ( круглые скобки ) ?

    Interesting Posts

    Преобразование PDF в PDF / A?

    Параметры загрузки удаляются при перезагрузке

    Как настроить backspace, чтобы идти вверх, а не обратно в Thunar?

    Лучший способ удалить расширение файла из строки?

    Должен ли демон-демона самонадеянно себя зарекомендовать?

    Проблемы с монтированием и сбросом на внешнее хранилище (Mac) с выделенного сервера (Ubuntu)

    Ожидать, что в scp-каталог не будет работать при запуске post post commit

    Почему несколько экземпляров Mate-терминала имеют один и тот же PID?

    mknfsmnt не работает с «Ошибка системного вызова -1»

    Несоответствие версии клиента базы данных в PhpMyAdmin

    Arch Linux не может подключиться к серверу x

    Конфликты пользователя в центральной очереди принтера

    Как скопировать все файлы, которые были созданы или изменены за последние 12 месяцев?

    Изменение веб-браузера по умолчанию на lynx с терминала

    Не удается загрузить Ubuntu на новый ASUS Eeebook

    Linux и Unix - лучшая ОС в мире.