Почему `ls -al &; ls -al` недействителен?
Я запустил это в своем поле Centos5:
ls -al & ; ls -al
Я ожидал, что он запустит ls -al
в фоновом режиме и одновременно запустит ls -al
на переднем плане и продемонстрирует, как результат вывода на терминал получает все из-за этого.
Однако я получаю:
- bash: синтаксическая ошибка около неожиданного токена `; '
Как я могу написать эти две команды в одной строке?
Ответы
Ответ 1
Неинтуитивно, &
- это разделитель команд, а также форвард. Это означает, что у вас есть три команды:
ls -al & ; ls -al
# ^^^^^^^|^|^^^^^^^
... и Bash не поддерживает пустой оператор.
Вместо этого просто напишите:
ls -al & ls -al
без точки с запятой.