Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: php > shell
Forum PHP.pl > Forum > Przedszkole
modern
Witam

na samym początku podkresle ze nie mialem pojęcia gdzie wsadzic ten topic : )
wiec znalazł się tutaj

Mam takie pytanko do zaawansowanych programistów
jaką komendą przez skrypt php będe mógł uruchomić coś na screenie na shellu ?
interesuje mnie również komenda na zamknięcie danego screena i możliwość dopisywania komend do danego screena smile.gif

Jeżeli mi pomożecie to mam w planach stworzyć ciekawy projekt

Pozdrawiam
ActivePlayer
poczytaj o exec" title="Zobacz w manualu php" target="_manual
legorek
shell_exec" title="Zobacz w manualu php" target="_manual - Execute command via shell and return the complete output as a string
modern
hmm, myślałem że to będzie łatwiejsze...
tymczasem:
  1. <?php
  2. $output = shell_exec('screen ./hlds_run -autoupdate -game cstrike +maxplayers 12 +map de_dust +exec server.cfg');
  3. echo "<pre>$output</pre>";
  4. ?>

efekt:
Kod
Must be connected to a terminal.
modern
cały czas pisze ze musze byc połączony : (
Fipaj
Pracujesz na linuksie?

Mi działa...
modern
tak to jest wszystko linux
a czy do tego jest potrzebny root? czy mozna z usera to zrobic?
i jezeli byłbyś taki dobry, wstawiłbyś mi jakiś przykład ktory Tobie działa?
Fipaj
Można to z usera zrobić, posiadam Ubuntu, na którym nie ma roota.

Przykład, który mi działa?

  1. <?php
  2.  
  3. system ('cp index.php www/');
  4.  
  5. ?>


każdy działa...

Robisz to na localhoście czy płatnym serwerze? Na pewno masz dostęp do shella?
modern
na platnym serwerze
dostep do shella jest bo siedze na nim na putty : )
ale chce zrobić jakąś akcje z www....
np. odpalić jakiś proces na screenie...
nie mam pojęcia dlaczego każe mi sie z czymś łączyć :/

EDIT:
bo jezeli chodzi o jakies komendy typu: dir, who, itp to wszystko działa i sie wyswietla ładnie na www, ale procesu nei da sie odpalic : (
Fipaj
No więc to jest pewnie takie ich zabezpieczenie przed zamulaniem serwera, itp.

PS. Przetestuj jeszcze taki skrypt o nazwie "php Shell"...
dr_bonzo
A co ta komenda ma robic?
modern
Cytat(dr_bonzo @ 2005-11-06 11:59:37)
A co ta komenda ma robic?

np. odpalać serwer do gry, albo serwer głosowy
oczywiscie na screenie

EDIT:

Fipaj, fajny skrypt smile.gif
działa... ale jak wpisałem screen
to wypisał to co zwykle... ze musze byc połączony
a jak wpisałem bez screena proces to myśli.... i myśli.... i czekam : )

EDIT2:

mkdir: cannot create directory `tralalala': Permission denied
MrMag
mam 2 koncepcje, ale nie wiem czy beda dzialac

moze sproboj najpierw wywolac komende screen a potem drugi raz to co napisales.

  1. <?php
  2. shell_exec('screen');
  3. $output = shell_exec('screen ./hlds_run -autoupdate -game cstrike +maxplayers 12 +map de_dust +exec server.cfg');
  4. ?>


inne wyjscie
  1. <?php
  2. $output = shell_exec('./hlds_run -autoupdate -game cstrike +maxplayers 12 +map de_dust +exec server.cfg > /dev/null');
  3. ?>


z tej drugiej opcji ostatnio korzystalem, jednak przy troche innym problemie a mianowicie kopiowaniu pliku w tle. proces znikal po skonczeniu kopiowania. nie wiem jak to bedzie w Twoim przypadku. sprobowac zawsze mozna smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.