Size: a a a

2020 October 21

DF

Denis F in Modern::Perl
Ммм, тёплый ламповый cgi :)
источник

IP

Ivan Pavlov in Modern::Perl
Есть такой код:
#!/usr/bin/perl
use 5.016;
use strict;
use warnings;
use POSIX ":sys_wait_h";

my $pid;

$SIG{TSTP} = sub {
   say("ctrl+Z");
   kill 'TSTP', $pid;
};

if($pid = fork()) {
   say("before wait");
   waitpid($pid, WUNTRACED);
   say("after wait");
   while(<>) {
       print("> $_");
   }
} else {
   #exec("perl -de1");
   exec("python");
}

Если вызывать
exec("perl -de1");
все работает как и ожидалось выводится after wait, дальше можем читать стандартный ввод в цикле.
Если вызвать
exec("python");
выводится after wait, но читать мы ничего не можем
источник

VG

Vadim Goncharov in Modern::Perl
питон, небось, открывает терминал как TUI-программа?
источник

IP

Ivan Pavlov in Modern::Perl
Vadim Goncharov
питон, небось, открывает терминал как TUI-программа?
выглядит как обычный шел
источник

VG

Vadim Goncharov in Modern::Perl
вот именно, отрабатывает tab completion и всякое такое
источник

SZ

Sergey Zhmylove in Modern::Perl
Ivan Pavlov
выглядит как обычный шел
В чем твой вопрос?
источник

SZ

Sergey Zhmylove in Modern::Perl
Мне, честно, очень не нравится exec "perl -de1", но раз уж ты так пишешь, пиши тогда и exec "python -c1"
источник

SZ

Sergey Zhmylove in Modern::Perl
ЗЫ и я не буду объяснять, почему не нравится. В perldoc это описано во всех красках
источник

IP

Ivan Pavlov in Modern::Perl
Sergey Zhmylove
В чем твой вопрос?
Вопрос в том, что для питона после нажатия ctrl Z нету того поведения, которое я ожидаю. Я ожидаю, что будет напечатано after wait и дальше я в цикле смогу читать
источник

VG

Vadim Goncharov in Modern::Perl
ну так, потому что нефиг ожидать всякую дичь
источник

SZ

Sergey Zhmylove in Modern::Perl
Vadim Goncharov
ну так, потому что нефиг ожидать всякую дичь
++
источник

IP

Ivan Pavlov in Modern::Perl
а как тогда в bash это работает?
источник

VG

Vadim Goncharov in Modern::Perl
еще б vim или mc так попробовал запустить 😂
источник

SZ

Sergey Zhmylove in Modern::Perl
Ivan Pavlov
а как тогда в bash это работает?
Лол, да не так, как ты думаешь ;)))
источник

VG

Vadim Goncharov in Modern::Perl
что именно "это" ?
источник

IP

Ivan Pavlov in Modern::Perl
обработка ctrl+Z
источник

SZ

Sergey Zhmylove in Modern::Perl
Vadim Goncharov
что именно "это" ?
Ну что после ctrl+z можно писать буквы в баш лол
источник

VG

Vadim Goncharov in Modern::Perl
Sergey Zhmylove
Ну что после ctrl+z можно писать буквы в баш лол
ах, job control !
источник

VG

Vadim Goncharov in Modern::Perl
так шеллу его и оставьте
источник

IP

Ivan Pavlov in Modern::Perl
Vadim Goncharov
так шеллу его и оставьте
так не интересно)
источник