2 Страницы < 1 2  
Ответить Создать тему

bash-скрипты , тема для разминки умов

ZlyddeN
post Jan 27 2012, 10:10 
Отправлено #16


Не язык, а напильник!

Сообщений: 8 852
Из: Чебоксары



Цитата(Dimez @ Jan 27 2012, 11:06)
-s - silent mode, значит ничего не выведется и условие проверки решит что файл не залочен. Именно не пустое выражение и является условием залоченности файла.
*

блин. точна. в голове вертелось, никак не мог понять... пасиб

--------------------
Я плохой — и это хорошо. Я не стану хорошим — но это не плохо.
Profile CardPM
  0/0  
jumpman23
post Jun 3 2013, 12:32 
Отправлено #17


jumpman

Сообщений: 269
Из: город N



Друзья, продублирую здесь, может у кого то желание появится помочь)

Ребят, можете помочь разобраться с заданием, не понятно что тут требуется от меня.

Присоединённое изображение

расскажите пожалуйста про maven и ant простым языком.

Сообщение отредактировал jumpman23 - Jun 3 2013, 12:35

--------------------
Подписи более трёх строк запрещены
Profile CardPM
  0/0  
Amp
post Jun 3 2013, 12:45 
Отправлено #18


Активный

Сообщений: 2 336



Простым языком, ant - это штука вроде makefile для java-проектов. Представляет собой xml-файл с командами сборки (взять такие-то файлы, скомпилировать, сложить туда-то, собрать из них jar, скопировать его еще куда-то, прогнать тесты). В общем очень примитивно, рутинно и некрасиво. Maven тоже для сборки java-проектов, но представляет собой более развесистую и навороченную клюкву, тоже на xml. Проект описывается декларативно (а не последовательностью команд, как в ant), и maven сам разрешает необходимые для сборки зависимости (может искать их в сети и выкачивать).
Profile CardPM
  0/0  
ZlyddeN
post Sep 10 2013, 21:55 
Отправлено #19


Не язык, а напильник!

Сообщений: 8 852
Из: Чебоксары



а в чем разница между
Исходный код
command &&  command

и
Исходный код
command
command
?

Сообщение отредактировал ZlyddeN - Sep 10 2013, 21:55

--------------------
Я плохой — и это хорошо. Я не стану хорошим — но это не плохо.
Profile CardPM
  0/0  
littlesavage
post Sep 10 2013, 22:12 
Отправлено #20


Эксперт

Сообщений: 698



Цитата(ZlyddeN @ Sep 10 2013, 22:55)
а в чем разница между
Исходный код
command &&  command

и
Исходный код
command
command
?
*


Второй вариант - это command; command, а не command && command
Profile CardPM
  0/0  
ZlyddeN
post Sep 10 2013, 22:54 
Отправлено #21


Не язык, а напильник!

Сообщений: 8 852
Из: Чебоксары



Цитата(littlesavage @ Sep 10 2013, 23:12)
Второй вариант - это command; command, а не command && command
*

и-и-и... на выполнении это как сказывается? через && паралельный запуск чтоле?

Сообщение отредактировал ZlyddeN - Sep 10 2013, 22:54

--------------------
Я плохой — и это хорошо. Я не стану хорошим — но это не плохо.
Profile CardPM
  0/0  
littlesavage
post Sep 11 2013, 00:29 
Отправлено #22


Эксперт

Сообщений: 698



Цитата(ZlyddeN @ Sep 10 2013, 23:54)
и-и-и... на выполнении это как сказывается? через && паралельный запуск чтоле?
*

Да нет, параллельный запуск делается не так.
При && вторая команда выполнится только если первая завершится успешно.
Profile CardPM
  0/0  
littlesavage
post Sep 14 2013, 00:52 
Отправлено #23


Эксперт

Сообщений: 698



А кто теперь расскажет, как выполнить 2 команды параллельно, а после их завершения - третью?

И сложная задача: то же самое, но третью выполнять только в случае успешного выполнения первых двух. Не используя parallel.
Profile CardPM
  0/0  
ZlyddeN
post Feb 5 2014, 10:11 
Отправлено #24


Не язык, а напильник!

Сообщений: 8 852
Из: Чебоксары



есть команда, запускается и выдает или не выдает в STDOUT информацию. Запущено должна быть постоянно
Надо определять была ли инфа и принимать действия...
т.е. надо чтобы скрипт мониторил вывод и принимал действия

Сообщение отредактировал ZlyddeN - Feb 5 2014, 10:26

--------------------
Я плохой — и это хорошо. Я не стану хорошим — но это не плохо.
Profile CardPM
  0/0  
Pen
post Mar 7 2014, 15:51 
Отправлено #25


Завсегдатай

Сообщений: 626



Цитата(littlesavage @ Sep 14 2013, 01:52)
А кто теперь расскажет, как выполнить 2 команды параллельно, а после их завершения - третью?

И сложная задача: то же самое, но третью выполнять только в случае успешного выполнения первых двух. Не используя parallel.
*


for A in B
do
command1 &
command2 &
done
command3

if command1
if command2
then
command3
fi
fi

Это не годится?



--------------------
All rights ignored.
Profile CardPM
  0/0  
Pen
post Mar 7 2014, 15:54 
Отправлено #26


Завсегдатай

Сообщений: 626



Цитата(ZlyddeN @ Feb 5 2014, 11:11)
есть команда, запускается и выдает или не выдает в STDOUT информацию. Запущено должна быть постоянно
Надо определять была ли инфа и принимать действия...
т.е. надо чтобы скрипт мониторил вывод и принимал действия
*

Если ?по какой-то причине? нельзя вывод отправлять файл, то первое что приходит на ум - strace.

--------------------
All rights ignored.
Profile CardPM
  0/0  
Г-Ли-Цин
post Mar 7 2014, 19:04 
Отправлено #27


Активный

Сообщений: 7 777



Тема должна быть здесь https://forum.na-svyazi.ru/?showforum=48

А подфорум "Программирование" можно разбить на разделы : "Системное -", "Прикладное -" , "- СУБД", "Web -", "- PLC" и "Прочее -"

Сообщение отредактировал Г-Ли-Цин - Mar 7 2014, 19:05

--------------------
http://tass.ru/ekonomika/2380827
Чем отличается провайдер от продавца пиццы? Он хочет, чтобы клиент, заплатив, оставил её за порогом, чтобы можно было продать несъеденную пиццу кому-то ещё? ))))
Profile CardPM
  0/0  
jem
post Mar 8 2014, 17:11 
Отправлено #28


Активный

Сообщений: 4 908



ZlyddeN, вывод можно отдавать на вход скрипту через пайп или именованный пайп.

Цитата(Pen @ Mar 7 2014, 16:51)
for A in B
do
command1 &
command2 &
done
command3

if command1
if command2
then
command3
fi
fi
*

Или так:

Исходный код

command1 &
command2 &
wait
command3


Исходный код

command1 && command2 && command3


Можно объединить оба:
Исходный код

command1 &
pid1=$!
command2 &
pid2=$!
wait $pid1 && wait $pid2 && command3


--------------------
C, Clojure(Script), Common Lisp, ECMAScript, Haskell, Java, Lua, Perl, PL/SQL, Python, Scala, SQL, Transact-SQL.
Profile CardPM
  0/0  
littlesavage
post Mar 9 2014, 21:50 
Отправлено #29


Эксперт

Сообщений: 698



Цитата(jem @ Mar 8 2014, 18:11)
Исходный код

command1 &
command2 &
wait
command3


Так третья команда будет выполняться независимо от статуса завершения первых двух

Цитата
Исходный код

command1 && command2 && command3


Так они выполняются по очереди

Цитата
Можно объединить оба:
Исходный код

command1 &
pid1=$!
command2 &
pid2=$!
wait $pid1 && wait $pid2 && command3


Да. Хотя здесь есть небольшая вероятность, что к моменту wait $pid2 с пидом $pid2 будет уже совсем другой процесс. Плюс, ждем обязательного выполнения обеих команд. А было бы круто, если одна команда завершилась с ошибкой, отдавать управление сразу, а не дожидаться вторую smile3.gif

Сообщение отредактировал littlesavage - Mar 9 2014, 21:51
Profile CardPM
  0/0  

2 Страницы < 1 2
ОтветитьTopic Options
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
Быстрый ответ
Кнопки кодов
 Расширенный режим
 Нормальный режим
    Закрыть все тэги


Открытых тэгов: 
Введите сообщение
Смайлики
smilie  smilie  smilie  smilie  smilie 
smilie  smilie  smilie  smilie  smilie 
smilie  smilie  smilie  smilie  smilie 
smilie  smilie  smilie  smilie  smilie 
smilie  smilie  smilie  smilie  smilie 
smilie  smilie  smilie  smilie  smilie 
         
Показать все

Опции сообщения