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


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

Автор Тема: Работа с терминалом.  (Прочитано 1780 раз)

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

Оффлайн AndrewAMG

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Работа с терминалом.
« : 31 Мая 2015, 14:10:11 »
Добрый день!

Являюсь абсолютным деби... новичком Ubuntu. По долгу студенческому столкнулся с этой замечательной операционной системой. При доблестной защите лабораторной работы возник вопрос, на который я думаю не вызовет сложности ответить у знающего человека.

А вот собственно и вопрос:
1. Как можно одной командой запустить задачу содержащую несколько процессов? (в терминале)

Для примера:
(Нажмите, чтобы показать/скрыть)

Желательно показать общую структуру/синтаксис команды! Спасибо!

Оффлайн Pilot6

  • Старожил
  • *
  • Сообщений: 14037
  • Xubuntu 18.04
    • Просмотр профиля
Re: Работа с терминалом.
« Ответ #1 : 31 Мая 2015, 14:53:35 »
Вопрос непонятен. Видимо задачку решаете. Но что вы привели как пример - полная чушь, извините.

Запустить несколько программ паралелльно одной командой можно так

prog1 & prog2
Я в личке не консультирую. Вопросы задавайте на форуме.

symon2014

  • Гость
Re: Работа с терминалом.
« Ответ #2 : 31 Мая 2015, 15:04:41 »

Оффлайн jura12

  • Старожил
  • *
  • Сообщений: 1472
  • 24.04 lubuntu
    • Просмотр профиля
Re: Работа с терминалом.
« Ответ #3 : 31 Мая 2015, 15:06:58 »
потом можно их смотреть и вытаскивать наверх. jobs, fg
« Последнее редактирование: 31 Мая 2015, 16:55:47 от jura12 »
сопротивление бесполезно

Оффлайн AndrewAMG

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Re: Работа с терминалом.
« Ответ #4 : 31 Мая 2015, 16:08:00 »
Вопрос непонятен. Видимо задачку решаете. Но что вы привели как пример - полная чушь, извините.

Запустить несколько программ паралелльно одной командой можно так

prog1 & prog2

Пункт в лабораторной работе звучит так: "Запустите процесс yes abc >/dev/null сразу в фоновом режиме"
Этот пункт я выполнил следующей командой: "andrew@Andrew-notebook:~$ yes abc>/dev/null&"

При защите лабораторной работы преподаватель спросил меня как я могу (цитирую): "Одной командой запустить задачу содержащую несколько процессов". Вот собственно это я и пытался объяснить.

Так же преподаватель намекнул что необходимо будет связать процессы определённым способом.

UPD1:
Сейчас попробовал запустить таким образом
andrew@Andrew-notebook:~$ yes abc>/dev/null & yes abc>/dev/null &
[1] 3936
[2] 3937
andrew@Andrew-notebook:~$ jobs
[1]-  Running                 yes abc > /dev/null &
[2]+  Running                 yes abc > /dev/null &
andrew@Andrew-notebook:~$ ps
  PID TTY          TIME CMD
 3889 pts/0    00:00:00 bash
 3936 pts/0    00:02:54 yes
 3937 pts/0    00:02:54 yes
23478 pts/0    00:00:00 ps

Как я понял запустилось 2 процесса, но правильно ли это вообще? Да я их вроде никак и не связывал.
« Последнее редактирование: 31 Мая 2015, 16:21:01 от AndrewAMG »

Оффлайн Pilot6

  • Старожил
  • *
  • Сообщений: 14037
  • Xubuntu 18.04
    • Просмотр профиля
Re: Работа с терминалом.
« Ответ #5 : 31 Мая 2015, 16:23:56 »
AndrewAMG,
Ну вы хотели два, вот и запустили. Что значет "никак не связывал"? Запустили два одинаковых процесса. Можно два разных. В чем вопрос?
Я в личке не консультирую. Вопросы задавайте на форуме.

quatro

  • Гость
Re: Работа с терминалом.
« Ответ #6 : 31 Мая 2015, 21:17:53 »
AndrewAMG, не уверен, надеюсь меня поправят, если неправильно.

prog1 & prog2- процессы связаны тем, что prog2 будет выполняться только после успешного выполнения prog1

Если сделать:

prog1 && prog2- то процессы не связаны, то есть будут выполняться параллельно, независимо один от другого.

Оффлайн Azure

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
Re: Работа с терминалом.
« Ответ #7 : 31 Мая 2015, 21:26:04 »
anchos,
C точностью до наоборот ;)
В Linux можно сделать ВСЁ что угодно, достаточно знать КАК !

quatro

  • Гость
Re: Работа с терминалом.
« Ответ #8 : 31 Мая 2015, 21:31:34 »
anchos,
C точностью до наоборот ;)

Спасибо! Думаю теперь и ТС поймет.

Пользователь решил продолжить мысль 31 Мая 2015, 21:36:01:
Итак, правильный ответ:

prog1 & prog2- процессы не связаны, то есть будут выполняться параллельно, независимо один от другого

prog1 && prog2- процессы связаны тем, что prog2 будет выполняться только после успешного выполнения prog1
« Последнее редактирование: 31 Мая 2015, 21:36:01 от anchos »

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: Работа с терминалом.
« Ответ #9 : 31 Мая 2015, 22:02:37 »
Цитировать
prog1 && prog2
внутри скрипт прог1 последный exit 0 будет на прог2, а если
exit 1 не будет на прог2, а будет
prog1 || prog2
Wars ~.o

quatro

  • Гость
Re: Работа с терминалом.
« Ответ #10 : 31 Мая 2015, 22:33:57 »
(Нажмите, чтобы показать/скрыть)

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: Работа с терминалом.
« Ответ #11 : 31 Мая 2015, 22:38:34 »
anchos,
(Нажмите, чтобы показать/скрыть)
Wars ~.o

quatro

  • Гость
Re: Работа с терминалом.
« Ответ #12 : 31 Мая 2015, 22:39:52 »
victor00000, ОК!

« Последнее редактирование: 20 Июня 2019, 06:22:56 от zg_nico »

 

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