Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Многострочные команды в терминале - как?  (Прочитано 4182 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ksevelyar

  • Автор темы
  • Любитель
  • *
  • Сообщений: 89
    • Просмотр профиля
    • dobroserver
Если ввожу многострочные команды - терминал выполняет первую даже не дождавшись энтера и отказывается выполнять последующие. Как и можно ли это поправить?
Грудь в крестах или голова в кустах.

Оффлайн ubuntu lamer

  • Активист
  • *
  • Сообщений: 612
  • BY
    • Просмотр профиля
Re: Многострочные команды в терминале - как?
« Ответ #1 : 30 Январь 2010, 01:04:17 »
команда 1 \
команда 2 \
...
It began in Afrika

Оффлайн ksevelyar

  • Автор темы
  • Любитель
  • *
  • Сообщений: 89
    • Просмотр профиля
    • dobroserver
Re: Многострочные команды в терминале - как?
« Ответ #2 : 30 Январь 2010, 01:05:12 »
Огромное спасибо.

Однако у меня заработало только с другим слешем и не до конца, последняя команда остаётся висеть и нужно нажимать энтер + две последние команды помимо нужного файла открывают файл "/":

sudo aptitude install ddclient /
sudo gedit /etc/default/ddclient /
sudo gedit /etc/ddclient.conf /  

В итоге промежуточный вариант избавленный от файлов "/" выглядит так:

sudo aptitude install ddclient /
sudo gedit /etc/default/ddclient /etc/ddclient.conf

Что я делаю не так?
« Последнее редактирование: 30 Январь 2010, 01:52:03 от ksevelyar »
Грудь в крестах или голова в кустах.

Оффлайн hippi90

  • Активист
  • *
  • Сообщений: 433
    • Просмотр профиля
Re: Многострочные команды в терминале - как?
« Ответ #3 : 30 Январь 2010, 01:42:37 »
А скрипт написать?

Пользователь решил продолжить мысль 30 Январь 2010, 01:44:54:
Кстати, а можно объяснить смысл сих действий?
« Последнее редактирование: 30 Январь 2010, 01:44:54 от hippi90 »

Оффлайн ksevelyar

  • Автор темы
  • Любитель
  • *
  • Сообщений: 89
    • Просмотр профиля
    • dobroserver
Re: Многострочные команды в терминале - как?
« Ответ #4 : 30 Январь 2010, 01:45:46 »
Скрипт для того времени когда я соберу все нужные команды в одну простыню :)

Сейчас я же только учусь и ввожу постоянно новые блоки команды многие из которых потом использовать не буду - зачем создавать для них скрипты?

Цитировать
Кстати, а можно объяснить смысл сих действий?
Это я ставлю демона dyndns чтобы привязать свой динамический ипи к определённому домену.

http://ru.wikipedia.org/wiki/%D0%94%D0%B8%D0%BD%D0%B0%D0%BC%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_DNS
« Последнее редактирование: 30 Январь 2010, 01:47:27 от ksevelyar »
Грудь в крестах или голова в кустах.

Оффлайн hippi90

  • Активист
  • *
  • Сообщений: 433
    • Просмотр профиля
Re: Многострочные команды в терминале - как?
« Ответ #5 : 30 Январь 2010, 01:52:14 »
Т.е. я так понимаю, первое - вы ставите собственно клиент "sudo aptitude install ddclient"
Затем открываем файл "/etc/default/ddclient /", что-то там пишем, открываем следующий файл, там что-то пишем. Так?

Оффлайн ksevelyar

  • Автор темы
  • Любитель
  • *
  • Сообщений: 89
    • Просмотр профиля
    • dobroserver
Re: Многострочные команды в терминале - как?
« Ответ #6 : 30 Январь 2010, 01:55:17 »
Да. Именно так.
Грудь в крестах или голова в кустах.

Оффлайн hippi90

  • Активист
  • *
  • Сообщений: 433
    • Просмотр профиля
Re: Многострочные команды в терминале - как?
« Ответ #7 : 30 Январь 2010, 02:00:56 »
Тогда можно попробовать так
sudo aptitude install ddclient && sudo gedit /etc/default/ddclient && sudo gedit /etc/ddclient.conf

Оффлайн ksevelyar

  • Автор темы
  • Любитель
  • *
  • Сообщений: 89
    • Просмотр профиля
    • dobroserver
Re: Многострочные команды в терминале - как?
« Ответ #8 : 30 Январь 2010, 02:10:31 »
sudo aptitude install ddclient && sudo gedit /etc/default/ddclient /etc/ddclient.conf

(Если перечислить файлы по очереди через пробел то откроются оба - это я понял благодаря багу с открытием пустого файла с именем "/")

Спасибо всё работает. А что значат эти "&&"?
Грудь в крестах или голова в кустах.

Оффлайн hippi90

  • Активист
  • *
  • Сообщений: 433
    • Просмотр профиля
Re: Многострочные команды в терминале - как?
« Ответ #9 : 30 Январь 2010, 02:14:17 »
Это списки команд. В данном случае если первая команда выполняется без ошибок, то выполняется следующая команда, если она выполняется с ошибкой, к примеру невозможно открыть файл, то выполнение прерывается.
Если разделить команды символом &, то команды будут выполняться по очереди, независимо от того, правильно или нет отработала предыдущая команда.

Оффлайн ksevelyar

  • Автор темы
  • Любитель
  • *
  • Сообщений: 89
    • Просмотр профиля
    • dobroserver
Re: Многострочные команды в терминале - как?
« Ответ #10 : 30 Январь 2010, 02:35:28 »
Спасибо за информацию, это очень удобно.
Грудь в крестах или голова в кустах.

Оффлайн hippi90

  • Активист
  • *
  • Сообщений: 433
    • Просмотр профиля
Re: Многострочные команды в терминале - как?
« Ответ #11 : 30 Январь 2010, 02:39:14 »
Пожалуйста. Думаю, стоит почитать про программирование в bash, у него много интересностей.

Оффлайн RustemNur

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 2933
  • умрешь с вами
    • Просмотр профиля
Re: Многострочные команды в терминале - как?
« Ответ #12 : 30 Январь 2010, 11:50:04 »
Если разделить команды символом &, то команды будут выполняться по очереди, независимо от того, правильно или нет отработала предыдущая команда.
Это не совсем так, пожалуйста, попробуйте уточнить для себя этот момент.

Оффлайн Frank

  • Старожил
  • *
  • Сообщений: 1799
  • Профессиональный любитель
    • Просмотр профиля
    • Народный форум Николаева
Re: Многострочные команды в терминале - как?
« Ответ #13 : 30 Январь 2010, 12:16:02 »
sudo gedit /etc/default/ddclient /
sudo gedit /etc/ddclient.conf /  
Зачем такой изврат?
sudo gedit /etc/default/ddclient /etc/ddclient.conf

Оффлайн ploop

  • Активист
  • *
  • Сообщений: 762
    • Просмотр профиля
Re: Многострочные команды в терминале - как?
« Ответ #14 : 30 Январь 2010, 14:02:38 »
Почитайте, классный материал
http://www.opennet.ru/docs/RUS/bash_scripting_guide/

 

Страница сгенерирована за 0.065 секунд. Запросов: 22.