forum.wfido.ru  

Вернуться   forum.wfido.ru > Прочие эхи > RU.LINUX

Ответ
 
Опции темы Опции просмотра
  #1  
Старый 19.02.2025, 16:21
Oleg Nazaroff
Guest
 
Сообщений: n/a
По умолчанию скрипт

Oleg Nazaroff написал(а) к All в Feb 25 15:16:25 по местному времени:

Нello, All.

Вчера вроде не пил.. Утром нода встала, причем по всем внешним параметрам - работает, но пакеты не йдуть, совсем. Стал перегружать, скриптом же, а мне: пермишен денайд.. где-то унутре скрипта. чооэ?? Нет доступа к определению PID. Занавес.
Короче, скопировал скрипт, перезапустил - все ок.
Но вот вопрос. А как сделать так, чтоб в скрипте следущее действие запускалось на основании результата действия?

То есть (синтаксис упрощаю):
..
if [pid > 0]; then
echo Ok
else
echo noOk
(вот это - РЕЗУЛЬТАТ ПРЕДЫДУЩЕГО ДЕЙСТВИЯ, на основании которого дальше нужно что-то сделать)
fi
;;

if (...КАК СОСЛАТЬСЯ НА РЕЗУЛЬТАТ выше??...)
0$ check;
else
echo Ok
fi
;;

--
WBR, ON
--- ХотДог/2.14.5/Android
Ответить с цитированием
  #2  
Старый 19.02.2025, 17:01
Alexander Kruglikov
Guest
 
Сообщений: n/a
По умолчанию Re: скрипт

Alexander Kruglikov написал(а) к Oleg Nazaroff в Feb 25 16:54:47 по местному времени:

Привет, Oleg!

19 фев 25 15:16, Oleg Nazaroff писал(а) к All:

ON> Но вот вопрос. А как сделать так, чтоб в скрипте следущее действие
ON> запускалось на основании результата действия?

Первое, что приходит в голову - вынести проверку pid в

function check_pid {
}

С наилучшими пожеланиями, Alexander.
--- GoldED+/LNX 1.1.5-b20240309
Ответить с цитированием
  #3  
Старый 19.02.2025, 17:21
Alexander Kruglikov
Guest
 
Сообщений: n/a
По умолчанию Re: скрипт

Alexander Kruglikov написал(а) к Oleg Nazaroff в Feb 25 17:08:25 по местному времени:

Привет, Oleg!

19 фев 25 16:54, Alexander Kruglikov писал(а) к Oleg Nazaroff:

ON>> Но вот вопрос. А как сделать так, чтоб в скрипте следущее действие
ON>> запускалось на основании результата действия?
AK> Первое, что приходит в голову - вынести проверку pid в
AK> function check_pid {
AK> }

А если результат влияет только на следующий if, то вообще должно работать

if [pid > 0]; then
echo Ok
else
if
0$ check;
else
echo Ok
fi
fi

С наилучшими пожеланиями, Alexander.
--- GoldED+/LNX 1.1.5-b20240309
Ответить с цитированием
  #4  
Старый 19.02.2025, 19:02
Oleg Nazaroff
Guest
 
Сообщений: n/a
По умолчанию Re: скрипт

Oleg Nazaroff написал(а) к Alexander Kruglikov в Feb 25 17:05:10 по местному времени:

Нello, Alexander Kruglikov.
On 19.02.2025 16:54 you wrote:

AK> Первое, что приходит в голову - вынести проверку pid в function check_pid { }

Но это же не решение по условиям ;)



--
WBR, ON
--- ХотДог/2.14.5/Android
Ответить с цитированием
  #5  
Старый 19.02.2025, 19:02
Oleg Nazaroff
Guest
 
Сообщений: n/a
По умолчанию Re: скрипт

Oleg Nazaroff написал(а) к Alexander Kruglikov в Feb 25 17:55:20 по местному времени:

Нello, Alexander Kruglikov.
On 19.02.2025 17:08 you wrote:

AK> А если результат влияет только на следующий if, то вообще должно работать if [pid > 0]; then
AK> echo Ok
AK> else
AK> if
AK> 0$ check;
AK> else
AK> echo Ok
AK> fi
AK> fi

Нет, следущий if - ниже закрывающего fi.

--
WBR, ON
--- ХотДог/2.14.5/Android
Ответить с цитированием
  #6  
Старый 19.02.2025, 19:42
Alexander Kruglikov
Guest
 
Сообщений: n/a
По умолчанию Re: скрипт

Alexander Kruglikov написал(а) к Oleg Nazaroff в Feb 25 19:32:19 по местному времени:

Привет, Oleg!

* Ответ на сообщение из CarbonArea (Мыльце для меня).

19 фев 25 17:05, Oleg Nazaroff писал(а) к Alexander Kruglikov:

AK>> Первое, что приходит в голову - вынести проверку pid в function
AK>> check_pid { }
ON> Но это же не решение по условиям ;)

Да, чот я затупил и перепутал местами, что откуда вытекает. Ну тогда загони в переменную результат:

if [ pid -gt 0]; then
echo Ok
p=$pid
else
echo noOk
p=0
fi
;;

if [ "$p" -lt "1" ]
0$ check;
else
echo Ok
fi
;;

С наилучшими пожеланиями, Alexander.
--- GoldED+/LNX 1.1.5-b20240309
Ответить с цитированием
  #7  
Старый 19.02.2025, 20:32
Stanislav Vlasov
Guest
 
Сообщений: n/a
По умолчанию скрипт

Stanislav Vlasov написал(а) к Oleg Nazaroff в Feb 25 21:03:59 по местному времени:

Привет, Oleg!

19 Feb 25 17:55, Oleg Nazaroff -> Alexander Kruglikov:

AK>> А если результат влияет только на следующий if, то вообще должно
AK>> работать if [pid > 0]; then
AK>> echo Ok
AK>> else
AK>> if
AK>> 0$ check;
AK>> else
AK>> echo Ok
AK>> fi
AK>> fi

ON> Нет, следущий if - ниже закрывающего fi.

У вас там нормальный шелл или что-то сильно нишевое? В смысле, переменные-то можно использовать, раз функции нельзя?
Что-то типа:

if ....; then
FLAG=0 # ну или текст, если с пробелами - в кавычках
else
FLAG=1
fi

if [ "$FLAG" = "0" ]; then
echo "Таки 0"
elif [ "$FLAG" = "1"]; then
echo "Таки 1"
else
echo "Фигня какая-то"
fi

С наилучшими пожеланиями, Stanislav.

--- -.-.-.-.-.-
Ответить с цитированием
  #8  
Старый 19.02.2025, 22:41
Oleg Nazaroff
Guest
 
Сообщений: n/a
По умолчанию скрипт

Oleg Nazaroff написал(а) к Stanislav Vlasov в Feb 25 21:33:54 по местному времени:

Нello, Stanislav Vlasov.
On 19.02.2025 21:03 you wrote:

SV> У вас там нормальный шелл или что-то сильно нишевое? В смысле, переменные-то можно
SV> использовать, раз функции нельзя? Что-то типа: if ....; then
SV> FLAG=0 # ну или текст, если с пробелами - в кавычках
SV> else
SV> FLAG=1
SV> fi if [ "$FLAG" = "0" ]; then
SV> echo "Таки 0"
SV> elif [ "$FLAG" = "1"]; then
SV> echo "Таки 1"
SV> else
SV> echo "Фигня какая-то"
SV> fi

Можно, но имхо (я пробовал!) эдак оно мусорит записывая в файлы эти нолики..

Так то if/fi циклов много, они вызываются снаружи, но некоторые д.б связаны.

--
WBR, ON
--- ХотДог/2.14.5/Android
Ответить с цитированием
  #9  
Старый 20.02.2025, 11:11
Alexander Kruglikov
Guest
 
Сообщений: n/a
По умолчанию Re: скрипт

Alexander Kruglikov написал(а) к Oleg Nazaroff в Feb 25 10:53:10 по местному времени:

Привет, Oleg!

19 фев 25 21:33, Oleg Nazaroff писал(а) к Stanislav Vlasov:

SV>> У вас там нормальный шелл или что-то сильно нишевое? В смысле,
SV>> переменные-то можно использовать, раз функции нельзя? Что-то
SV>> типа: if ....; then
SV>> FLAG=0 # ну или текст, если с пробелами - в кавычках
SV>> else
SV>> FLAG=1
ON> Можно, но имхо (я пробовал!) эдак оно мусорит записывая в файлы эти
ON> нолики..

Бери нолик в кавычки и не будет файлов.

if [ $pid -gt 0 ];
then
echo Ok
p="1"
else
echo noOk
p="0"
fi

С наилучшими пожеланиями, Alexander.
--- GoldED+/LNX 1.1.5-b20240309
Ответить с цитированием
  #10  
Старый 20.02.2025, 15:12
Oleg Nazaroff
Guest
 
Сообщений: n/a
По умолчанию Re: скрипт

Oleg Nazaroff написал(а) к Alexander Kruglikov в Feb 25 13:54:40 по местному времени:

Нello, Alexander Kruglikov.
On 20.02.2025 10:53 you wrote:

AK> Бери нолик в кавычки и не будет файлов. if [ $pid -gt 0 ];
AK> then
AK> echo Ok
AK> p="1"
AK> else
AK> echo noOk
AK> p="0"
AK> fi

Я брал, толку нет ;)

--
WBR, ON
--- ХотДог/2.14.5/Android
Ответить с цитированием
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 23:45. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2025, vBulletin Solutions, Inc. Перевод: zCarot