Articles of bash

Скрипт для разбора электронных писем для вложений

Я ищу способ отслеживания учетной записи электронной почты Linux mbox, когда приходит электронное письмо, я хотел бы загрузить вложение из электронной почты и сохранить вложение (файл CSV), чтобы он мог использоваться скриптом PHP. Какой был бы лучший способ обойти это? Я посмотрел на PHP-функции IMAP, но это, по-видимому, не самый подходящий метод, когда простой скрипт […]

PHP ssh2_exec, выполняющий сразу несколько команд

Я использую ssh2_exec для выполнения нескольких команд из PHP на моих CentOS-серверах, и я использовал его много раз, но сегодня, когда я попытался сделать это с 4 или 5 командами одновременно с &&, это не сработало. Вот приведенный ниже код: if (!($stream = ssh2_exec($con, 'cp -rf /home/shared/Tekkit_Server_3.1.2.zip /home/servers2/'.$mUsername.' && unzip /home/servers2/'.$mUsername.'/Tekkit_Server_3.1.2.zip && rm -rf /home/servers2/'.$mUsername.'/mods/mod_NetherOres.jar […]

PHP exec (): запуск сценария bash для настройки среды, а затем выполнение программы Python

Shell – tcsh. PHP v5.1.6. Редхат 5.7. Safe_mode выключен. Запуск php-скрипта из браузера с помощью exec для: настроить среду через исходную команду на скрипт bash запустить программу python, основанную на среде, настроенной сценарием bash (выходы программы в STDOUT) Это работает из командной строки ($ shell = tcsh): /bin/bash -c "source /path-to-config-bash-script/config.sh; /bin/path-to-python /path-to-python-program/prog.py 2>&1" Это […]

Объединение записей в XML

У меня есть продукты, содержащие XML, и мне нужно как-то слиться с одной записью: <SHOPITEM> <PRODUCT>POINT</PRODUCT> <FRAMESIZE>MD</FRAMESIZE> <CODE>029,00</CODE> <COLOR>black / yellow</COLOR> </SHOPITEM> <SHOPITEM> <PRODUCT>POINT</PRODUCT> <FRAMESIZE>LD</FRAMESIZE> <CODE>029,01</CODE> <COLOR>black / yellow</COLOR> </SHOPITEM> <SHOPITEM> <PRODUCT>POINT</PRODUCT> <FRAMESIZE>LD</FRAMESIZE> <CODE>029,03</CODE> <COLOR>green / white</COLOR> </SHOPITEM> <SHOPITEM> <PRODUCT>POINT</PRODUCT> <FRAMESIZE>MD</FRAMESIZE> <CODE>029,04</CODE> <COLOR>green / white</COLOR> </SHOPITEM> <PRODUCT> – это то же самое, что и есть […]

Вывод скрипта после команды тайм-аута

Я использую класс задач symfony (php framework) для создания скриптов cli. В настоящее время я написал такой скрипт: #!/bin/bash timeout 3600 ./symfony pparse:prices Но выхода нет, мне нужен этот скрипт, который выйдет через 3600 секунд. и ./symfony pparse: выводит данные на консоль. Тайм–аут работает, но нет выхода.

Хранить функции оболочки bash между запросами shell_exec ()

У меня есть PHP-скрипт, который запускается через CLI. В свою очередь, я хочу, чтобы этот сценарий вызывал сценарий bash, но желательно, чтобы я хотел разбить запросы BASH, чтобы я мог видеть действие так, как оно происходит. Кажется, я могу установить переменные среды, и они, похоже, существуют между функциями shell_exec (). Но даже если у меня […]

PHP: установить USB-устройство

Я пишу PHP-скрипт для графического интерфейса сервера Cent Cent. Для целей тестирования я настроил Apache как localhost. Cent OS не автомонтирует подключенное устройство USB. На PHP мне нужно проверить, подключено ли USB-устройство, затем смонтировать его и перечислить содержимое файла для пользователя. Это довольно просто в bash, но я не могу заставить его работать на PHP. […]

Не удается запустить скрипт оболочки в PHP

Когда я пытаюсь запустить сценарий оболочки с exec и shell_exe ничего не происходит! Когда я запускаю с этими командами ls или whoami все работы. Что бы это могло быть?

Ошибка автозаполнения Makefile bash с заданными PHP-целями

В крупном проекте, управляемом Makefile, я недавно добавил некоторые PHP-цели, и завершение bash перестало работать: нажатие [tab] не вызывает завершение, но вставляет символ табуляции. Я выделил проблему для этого минимального файла Makefile: # TARGETS = $(echo target1 target2) TARGETS = $(php -r 'echo "target1 target2";') # TARGETS = $(python -c 'print "target1 target2"') # TARGETS […]

стандартный результат воздействия SIGKILL?

У меня есть сценарий для ограничения времени выполнения команд. limit.php <?php declare(ticks = 1); if ($argc<2) die("Wrong parameter\n"); $cmd = $argv[1]; $tl = isset($argv[2]) ? intval($argv[2]) : 3; $pid = pcntl_fork(); if (-1 == $pid) { die('FORK_FAILED'); } elseif ($pid == 0) { exec($cmd); posix_kill(posix_getppid(), SIGALRM); } else { pcntl_signal(SIGALRM, create_function('$signo',"die('EXECUTE_ENDED');")); sleep($tl); posix_kill($pid, SIGKILL); die("TIMEOUT_KILLED […]