Как объединить несколько команд в терминале?

У меня есть следующие команды.

cd import
zcat urls1.sql.gz | mysql -u root -p urls
cd /var/www/project1/
nano 1.php

На данный момент я выполняю это один за другим.

Есть ли способ объединить эти команды в одну строку?

25
задан 3 May 2014 в 18:57

2 ответа

Да, разделяйте их точкой с запятой, например:

dir; ls -l

Большинство языков / оболочек используют точку с запятой для обозначения конца команды и запуска нового при оценке слева направо.

Или, как рекомендует @RobieBasak, используйте & amp; & amp; вместо ; для защиты от кодирования несчастных случаев.

dir && ls -l
0
ответ дан 3 May 2014 в 18:57

Это иллюстрирует больше:

  1. А; B †“Выполненный A и затем B, независимо от успешности или неуспешности

  2. А & & B †“Выполненный B, только если следовавший

  3. А || B †“Выполненный B, только если неудавшееся

источник: https://www.howtogeek.com/269509/how-to-run-two-or-more-terminal-commands-at-once-in-linux /

2
ответ дан 10 October 2019 в 13:29

Другие вопросы по тегам:

Похожие вопросы: