веб-мастеру блог веб-мастера Статьи Веб-Мастера SEO Tools книги веб-мастеру

IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> php функция RTFM php - exec()..., Помогите разобраться...
SPY
сообщение 28.12.2007, 22:05
Сообщение #1


Прохожий
*

Группа: Пользователи
Сообщений: 3
Регистрация: 28.12.2007
Пользователь №: 474



Уважаемые программёры, помогите разобраться... В php я мало понимаю!!! а мне надо запустить и откомпилировать демона... мне сказали что это можно сделать с помощью exec() функции... Подскажите как???

Если бы из ssh мне бы пришлось зделать следующее:
*** ЗАПУСК ДЕМОНА ***
1. Откомпилируйте демона командой g++ -O3 -o daemon daemon.cpp
2. Процедура запуска в Unix/Linux :
из шелла.
Идите в директорию data/daemon и просто запустите демона как обычную программу: ./daemon.pl (или perl ./daemon.pl)


подскажите как мне это сделать!!! Буду благодарен до конца жизни...
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
gid
сообщение 28.12.2007, 22:31
Сообщение #2


Администратор форума
*****

Группа: Главные администраторы
Сообщений: 541
Регистрация: 27.11.2006
Из: Россия
Пользователь №: 1



Теоритически php-код должен быть таким:
Код

<?php
exec("g++ -O3 -o daemon daemon.cpp");

exec("data/daemon/daemon.pl");
?>

при условии что:
* это действительно все шаги компиляции и запуска
* функция exec() разрешена
* все файлы находятся в одной из корневых папок для php

если последнее условие не выполняется, то нужно изменять директорию с помощью chdir("путь_к_нужной_папке") или же указывать полный путь непосредственно в самой функцие exec().

Подробнее о запуске приложений на стороне сервера можно прочитать в статье "Функции выполнения программы"


--------------------
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SPY
сообщение 28.12.2007, 22:35
Сообщение #3


Прохожий
*

Группа: Пользователи
Сообщений: 3
Регистрация: 28.12.2007
Пользователь №: 474



Цитата(gid @ 28.12.2007, 18:31) *

Теоритически php-код должен быть таким:
Код

<?php
exec("g++ -O3 -o daemon daemon.cpp");

exec("data/daemon/daemon.pl");
?>

при условии что:
* это действительно все шаги компиляции и запуска
* функция exec() разрешена
* все файлы находятся в одной из корневых папок для php

если последнее условие не выполняется, то нужно изменять директорию с помощью chdir("путь_к_нужной_папке") или же указывать полный путь непосредственно в самой функцие exec().

Подробнее о запуске приложений на стороне сервера можно прочитать в статье "Функции выполнения программы"





Огромное спасибо...
Это надо просто сделать php файл с этим кодом, загрузить его через ftp и запустить??? Я так понял????
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
gid
сообщение 28.12.2007, 22:56
Сообщение #4


Администратор форума
*****

Группа: Главные администраторы
Сообщений: 541
Регистрация: 27.11.2006
Из: Россия
Пользователь №: 1



Цитата
Это надо просто сделать php файл с этим кодом, загрузить его через ftp и запустить??? Я так понял????

Да, вы все правильно поняли.


--------------------
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SPY
сообщение 29.12.2007, 5:05
Сообщение #5


Прохожий
*

Группа: Пользователи
Сообщений: 3
Регистрация: 28.12.2007
Пользователь №: 474



А как тогда его остановить??? Подскажита пожалуйста!!!
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
gid
сообщение 29.12.2007, 11:53
Сообщение #6


Администратор форума
*****

Группа: Главные администраторы
Сообщений: 541
Регистрация: 27.11.2006
Из: Россия
Пользователь №: 1



Если это ОС Linux или Unix то там существуют команды завершения процессов:
skill [имя_процесса] - завершение процесса по его имени
kill [pid_процесса] - завершение по pid (process id)

т.е. теоритически процесс остановить можно так:
Код
<?php
exec("skill daemon");
?>


где daemon - точное имя больше ненужного процесса.


--------------------
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
olia777
сообщение 11.3.2008, 19:59
Сообщение #7


Прохожий
*

Группа: Пользователи
Сообщений: 2
Регистрация: 11.3.2008
Пользователь №: 666



Господа системные администраторы города Москвы (кто реально работает в этой должности в какой-либо организации, является профессионалом, а не любителем)!
Нужна Ваша помощь в одном деликатном деле. Заплачу 100 долларов или даже побольше в случае успеха...
Подробности расскажу лично.
Мой номер в программе ICQ (программа для переписки по Интернет) 382-177-345.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Быстрый ответОтветить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 12.5.2008, 18:04
^ ВВЕРХ ^

Посетите наши проекты:
Бодибилдинг.info - центр фитнес
Бодибилдинг.info - бодибилдинг и культуризм