Каково поведение & operator

Я пытаюсь связать команды в linux, я использую дистрибутив ubuntu 14.04. Цель создания каталога и перехода в этот каталог. Обычно мы делаем это

mkdir foldername cd foldername 

Отлично, когда вы пробовали это

 mkdir gates cd gates 

работает, как ожидалось. Но все работает не так, как ожидалось,

mkdir gates & cd gates , не работает, ошибка не является no such file or directory . При нажатии enter оно создаст ворота каталога на следующем шаге. Почему это происходит? Но ls & mkdir gates работают нормально

  • Как поставить программу «да» на задний план?
  • Автоматические фоновые процессы
  • Как получить pid процесса в фоновом режиме?
  • фоновый процесс ввода труб
  • Когда ваш Linux-сервер выключен, ваша программа перестает работать или возобновляется?
  • Как заставить процесс работать в фоновом режиме, даже если он отказывается?
  • Использование точки с запятой для отделения фонового задания от следующего?
  • Как настроить сообщение завершения работы с базой данных?
  • One Solution collect form web for “Каково поведение & operator”

    & является оператором фоновой обработки оболочки ; он помещает команду, предшествующую ей в фоновом режиме, и продолжает.

    Так

     mkdir gates & cd gates 

    запускает mkdir gates в фоновом режиме и сразу же запускает cd gates , который пытается изменить каталог до его создания (и не работает).

     ls & mkdir gates 

    работает, потому что mkdir gates не зависят от чего-либо; все, что происходит, это то, что ls запускается в фоновом режиме, выводя список каталогов, в то время как mkdir создает каталог gates .

    Вы, вероятно, ищете

     mkdir gates && cd gates 

    который изменит каталог только в том случае, если mkdir преуспеет; вы можете предпочесть

     mkdir -p gates && cd gates 

    который не будет работать, если каталог уже существует.

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