Articles of proc open

Проблемы с Proc_open и Capifony

Я пытаюсь использовать Capifony с моим веб-приложением в Symfony2.1, чтобы ускорить процесс развертывания. Вот мой файл deploy.rb: default_run_options[:pty] = true set :application, "mywebsite" set :domain, "mywebsite.com" set :deploy_to, "~/git/mywebsite.git" set :app_path, "app" set :repository, "git@github.com:myname/mywebsite.git" set :scm, :git # Or: `accurev`, `bzr`, `cvs`, `darcs`, `subversion`, `mercurial`, `perforce`, or `none` set :user, "myserveruser" # The server's […]

PHP – убить процесс proc_open () в другом файле?

Я создаю фоновый процесс, используя proc_open() и мне интересно, как отменить или остановить этот фоновый процесс, из другого файла или действия, в то время как мой фоновый процесс все еще работает? Вот мой код: $errorLog = './error.log'; $descriptorspec = array( 0 => array("pipe", "r"), // stdin is a pipe that the child will read from […]

Не получить полный ответ от popen

Привет, я запускаю процесс с popen; $handle = popen('python scriptos.py', "r"); while (!feof($handle)) { $data = fgets($handle); echo "> ".$data; } И я получаю только 3 строки из процесса, который возвращает 5 строк. Я запустил эту точную команду в CLi, и я получу больше ответа. Это похоже на то, что он перестает читать на ранней […]

proc_open: расширение номеров дескрипторов файлов для включения «статуса» обратной связи из сценария Perl

Руководство proc_open PHP гласит: Номера дескрипторов файлов не ограничены 0, 1 и 2 – вы можете указать любой допустимый номер дескриптора файла, и он будет передан дочернему процессу. Это позволяет вашему сценарию взаимодействовать с другими сценариями, которые запускаются как «совместные процессы». В частности, это полезно для передачи парольных фраз в такие программы, как PGP, GPG […]

Запустить perl-файл из PHP-скрипта, но не дождаться вывода на Windows Server

Я пытаюсь выполнить скрипт perl из PHP-скрипта. У меня была эта работа с использованием различных методов, таких как exec, popen и proc_open, но у меня есть пара проблем, вокруг которых старый добрый Google не дает мне ответов. Мне нужно запустить скрипт .pl (передав одну переменную скрипту, который является числом) из файла php, но остановите PHP-скрипт […]

Передача интерактивных аргументов для метода PHP exec ()

Нужна помощь в реализации следующего. У меня есть программный файл C следующим образом: #include <stdio.h> main() { int x; int args; printf("Enter an integer: "); if (( args = scanf("%d", &x)) == 0) { printf("Error: not an integer\n"); } else { printf("Read in %d\n", x); } if (( args = scanf("%d", &x)) == 0) { […]

Подключить трубы процессов в php

Я хотел бы, чтобы выход одного процесса, созданного с помощью proc_open, был передан в другой, созданный с помощью proc_open (в php). Например. В bash я могу сделать: [herbert@thdev1 ~]$ cat foo 2 3 1 [herbert@thdev1 ~]$ cat foo | sort 1 2 3 [herbert@thdev1 ~]$ Я хотел бы имитировать это в php, используя proc_open (вместо […]

PHP proc_open не будет работать – дает мне «Недостающий определитель дескриптора в массиве»

Предупреждение: proc_open (): Отсутствует спецификатор дескриптора в массиве в C: \ … \ updatedots.php в строке 102 Я пытаюсь открыть блокнот, закрыв его через 2 секунды. Это мой код: $descriptorspec = array( 0 => array("pipe" => "r"), 1 => array("pipe" => "w"), 2 => array("file" => "logs/errors.txt") ); // Create child and start process $child […]

как получить выход proc_open ()

Я попытался получить выход из метода proc_open в php, но, когда я его распечатаю, я получил пустой. $ descriptorspec = array ( 0 => array ("pipe", "r"), 1 => массив ("труба", "w"), 2 => массив («файл», «файлы / temp / error-output.txt», «a») ); $ process = proc_open («время ./a a.out», $ descriptorspec, $ pipes, $ […]

Правильное выполнение оболочки в PHP

Проблема Я использовал функцию, которая использовала proc_open() для вызова команд оболочки. Кажется, что я делал STDIO неправильно, а иногда вызывал PHP или целевую команду для блокировки. Это исходный код: function execute($cmd, $stdin=null){ $proc=proc_open($cmd,array(0=>array('pipe','r'),1=>array('pipe','w'),2=>array('pipe','w')),$pipes); fwrite($pipes[0],$stdin); fclose($pipes[0]); $stdout=stream_get_contents($pipes[1]); fclose($pipes[1]); $stderr=stream_get_contents($pipes[2]); fclose($pipes[2]); return array( 'stdout'=>$stdout, 'stderr'=>$stderr, 'return'=>proc_close($proc) ); } устройство function execute($cmd, $stdin=null){ $proc=proc_open($cmd,array(0=>array('pipe','r'),1=>array('pipe','w'),2=>array('pipe','w')),$pipes); fwrite($pipes[0],$stdin); fclose($pipes[0]); $stdout=stream_get_contents($pipes[1]); fclose($pipes[1]); […]

Intereting Posts