Каковы шаги этой команды, используя; || и &&

Примечание: ABC – это команды …..

Скажите, пожалуйста, какой шаг был бы из этих команд, поэтому я могу лучше понять язык.

A || B ; C = If A fails then run B then C? A ; B || C = Run A then B then C if (B fails... or is it if A fails?)? 

То, что я на самом деле, это что-то вроде этого (но хотелось бы понять вышеприведенные шаги):

Если A терпит неудачу, тогда запустите B, но если A преуспеет, пропустите B, затем запустите C, d, e и т. Д. (Как я могу это сделать с помощью «||» ";" и / или "&&"?)

Я нашел информацию по этой ссылке, но она показывает только шаги из 2 команд, а не 3 …. https://askubuntu.com/questions/334994/which-one-is-better-using-or-to-execute -Несколько-команды в одном линии

Причина, почему другая ссылка не отвечает на этот вопрос:

Итак, в следующий раз, если вам нужно объединить 4 команды, вы зададите новый вопрос, потому что ответы здесь показывают только, как работают 3 команды? – don_crissti26 мин назад

Нет, сэр, потому что я пойму лингвистический следующий шаг на будущее :). В основном из-за этого ….: Я был неясно, если команда и переключатель (?) «||» в последовательном порядке (команда C в этом случае) всегда смотрели на команду (A) или если она выглядела командой (B ). Это в основном потому, что меня смутил кто-то, говорящий это: A || B = Запустить B, если A не удалось .. не был уверен, что следующая команда (C, D и т. Д. И т. Д.) Будет также смотреть на A 🙂 (duh – это то, что кажется, но я не знаю этого языка .. так что нужно было получить ясность).

  • Как изменить интерпретацию переменной в `zsh`?
  • Как выйти из цикла while
  • Команда для удаления первого N числа строк на входе
  • Не удается запустить несколько файлов без nohup
  • Выход, превышающий высоту окна терминала
  • Минимизировать потребность в sudo
  • Возможно ли просматривать ресурсы samba в командной строке?
  • Проиллюстрируйте разность двух квадратов через командную строку
  • 2 Solutions collect form web for “Каковы шаги этой команды, используя; || и &&”

     A || B ; C 

    если A выйдет с ненулевым статусом, запустите B. C бежит безоговорочно

     A ; B || C 

    запустите A. Затем запустите B. Если B выходит с ненулевым статусом, запустите C


    Тангенциально вы иногда видите A && B || C A && B || C Обычно это делается сокращением, if A; then B; else C; fi if A; then B; else C; fi if A; then B; else C; fi . Однако есть одно существенное различие:

     A && B || C 
    • Если A не удался, запустите C
    • если A преуспевает, тогда запустите B.
      • если B не удастся, запустите C
     if A; then B; else C; fi 
    • Если A не удался, запустите C
    • если A преуспевает, тогда запустите B.
      • если B не выполняется, C НЕ выполняется

    Демонстрация:

     $ (echo A; exit 0) && (echo B; exit 1) || (echo C; exit 2); echo $? A B C 2 # <== the exit status of C $ if (echo A; exit 0); then (echo B; exit 1); else (echo C; exit 2); fi; echo $? A B 1 # <== the exit status of B 

    Простой тест

     (echo -n "hello" || echo -n "world") && echo "!" 

    производит «привет!».

    Альтернативно (создание оператора A false)

     ( false || echo -n "world") && echo "!" 

    производит «мир!»

    OR являются ленивыми, поэтому, если A истинно в (A || B), B никогда не оценивается, как True OR True == True и True ИЛИ False == True

    Interesting Posts

    Есть ли разница между «a = b» & «a = $ b»?

    Как я могу получить самокомпилированные пакеты, чтобы хорошо играть с менеджерами пакетов (например, apt-get, yum)

    Свяжите два интернет-соединения различного качества

    Как получить приемлемую последнюю измененную временную метку для моего сайта Jekyll с помощью сценария оболочки?

    xdotool испортил ввод с клавиатуры

    Playerctl / dbus не работает с Spotify

    Есть ли такая команда, как xwininfo, xdpyinfo, xprop или xlsclient, которые расскажут мне, какой шрифт использует X-клиентское окно?

    Соединение wlan перестает работать, когда запущено соединение ppp 3g

    Получите обновляющий список запущенных определенных процессов

    устранение неисправностей

    Как изменить эти правила iptables, чтобы связать HTTP-трафик с моим VPN-соединением?

    Внезапно меняющиеся пользователи

    Как добавить дескриптор дескриптора gnome в оболочку пантеона

    Настройка сетевых карт на FreeBSD

    Как замедлить прокрутку многостраничного стандартного вывода на терминал?

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