Страница 1 из 1

perl скрытно! fork STDOUT SDTERR /dev/null &

Добавлено: 2009-12-30 21:26:01
fox
Добрый вечер Господа!
Есть скрипт на перли, он по идеи должен быть зациклен, но дело не в этом, когда я его запускаю в ручную то я наблюдаю вывод информации, тогда я запускаю вот так:

Код: Выделить всё

startscript.pl &
С символом &, но проходи время и снова я наблюдаю инфу вывода, а как мне запустить скрипт отдельным процессом который в консоли мне бы не мелькал, может как то внутри скрипта можно что то сделать?
За ранние спасибо!

Re: perl скрытно!

Добавлено: 2009-12-30 21:48:33
ProFTP

Код: Выделить всё

startscript.pl > /dev/null &
по-моиму как-то так

Re: perl скрытно!

Добавлено: 2009-12-30 22:02:23
fox
ProFTP писал(а):

Код: Выделить всё

startscript.pl > /dev/null &
по-моиму как-то так
Неа, всё равно в консоль выводит(((

Re: perl скрытно!

Добавлено: 2009-12-30 22:16:59
ProFTP

Код: Выделить всё

startscript.pl  2>&1 1>/dev/null 

Re: perl скрытно!

Добавлено: 2009-12-30 22:19:45
fox
ProFTP писал(а):

Код: Выделить всё

startscript.pl  2>&1 1>/dev/null 
Всё равно, выводятса данные на экран, принты всевозможные в скрипте...

Re: perl скрытно!

Добавлено: 2009-12-30 22:24:24
ProFTP
у меня не выводит....

Код: Выделить всё

ls -a 2>&1 1>/dev/null
у вашей программе наверное надо вывод отправить как-то в STROUT с STDERR по другому....

Re: perl скрытно!

Добавлено: 2009-12-30 22:36:50
fox
Я кажется понял, в чём дело…
Это перловский скрипт, который ещё в шеле запускает команды разные, вод и то что шел там ему отвечает то он и выводит, как тогда мне быть?

Re: perl скрытно!

Добавлено: 2009-12-30 22:39:15
ProFTP
ну поставь в скриптах

Код: Выделить всё

 2>&1 1>/dev/null

Re: perl скрытно!

Добавлено: 2009-12-30 22:57:08
fox
Получилось, огромное спасибо за помощь!
Очень благодарен!
Я в код дабавил вод так

Код: Выделить всё

$tmp1 2>&1 2>/dev/null > $tmp2
Получаеться слудующае, ошибки гасятса а полезная инфа в файл сливаеться!

Re: perl скрытно!

Добавлено: 2009-12-30 23:04:31
fox
А ещё вопросик:
а как сделать, вот я запускаю сскрипт

Код: Выделить всё

/home/fox/wrk/startscript.pl
И там курсор становиться в низу, и мне остаёться нажать только CTRL+C, что вернуть консольно тогда скрипт падает, если я делаю:

Код: Выделить всё

/home/fox/wrk/startscript.pl &
то всё хорошо, но потом не всё гладко с остоновкой, есть какие то системные в пеерли флаги, что бы скрипт исключительно фоново запускался?

Re: perl скрытно!

Добавлено: 2009-12-30 23:10:15
ProFTP

Код: Выделить всё

if($$ == $parent){ 

print "Parent: pid=$$;($parent)\n"; 

} else {

kill("TERM",$parent); # убиваем родителя

print "Child";

# код
........................

}
http://www.google.com.ua/#hl=uk&source= ... df92d15b60

Re: perl скрытно! fork STDOUT SDTERR /dev/null &

Добавлено: 2009-12-30 23:17:20
fox
ЧТо то я немного не допойму, если я правельно понимаю, то как раньше я тормазил скрипт:

Код: Выделить всё

ps -wuax | grep script
Затем просто:

Код: Выделить всё

kill 1111 к примеру
А теперь просто кил и номер пайда не катит, нужно потом ещё fg сделать, что не есть гуд!

Re: perl скрытно! fork STDOUT SDTERR /dev/null &

Добавлено: 2010-01-02 12:39:14
thefree
_http://search.cpan.org/~ehood/Proc-Daemon-0.03/Daemon.pm

ох ... сколько раз можно повторять что STDOUT в perl можно перенаправлять!!!
А то что вы предлагаете это костыли ...

Re: perl скрытно! fork STDOUT SDTERR /dev/null &

Добавлено: 2010-01-02 17:26:14
fox
thefree писал(а):_http://search.cpan.org/~ehood/Proc-Daemon-0.03/Daemon.pm

ох ... сколько раз можно повторять что STDOUT в perl можно перенаправлять!!!
А то что вы предлагаете это костыли ...
Я не селён в в этом зыке, покажите пожалусто готовый пример, например для моего случая, когда надо запускать энный скрипт?
Очень признателен, что вы написали!

Re: perl скрытно! fork STDOUT SDTERR /dev/null &

Добавлено: 2010-01-02 20:48:30
thefree
как запустить в bg вот тут
_http://www.perlmonks.org/index.pl?node_id=478839

Перенаправление STDOUT и STDERR
_http://perldoc.perl.org/functions/open.html

А вот тут достаточно много экспериментов по этому поводу
_http://forum.dklab.ru/viewtopic.php?t=28842

Re: perl скрытно! fork STDOUT SDTERR /dev/null &

Добавлено: 2010-01-02 22:41:05
fox
thefree писал(а):как запустить в bg вот тут
_http://www.perlmonks.org/index.pl?node_id=478839
Я смотрел, но я не понял, прошу не пинать ногами, вы бы не могли разяснить?
БУДУ ОЧЕНЬ ПРИЗНАТЕЛЕН!

Re: perl скрытно! fork STDOUT SDTERR /dev/null &

Добавлено: 2010-01-06 13:55:34
_thefree
в чём именно загвоздка?

Re: perl скрытно! fork STDOUT SDTERR /dev/null &

Добавлено: 2010-01-06 17:04:59
fox
Спасибо, я разобрался!