Repository 32bit  Forum
Repository 64bit  Wiki

PHP exec shell command

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.

PHP exec shell command

Messaggioda darkstaring » sab gen 12, 2013 16:09

Giorno ;-) ....

Sto tentando di eseguire uno script bash da php con la funzione exec ma sembrerebbe che il comando venga eseguito solo "virtualmente"
e che non venga eseguito realmente... l'output che ricevo è esattamente quello che otterrei da shell però, di fatto, sembra che il processo che dovrebbe avviare lo script non venga eseguito.
Quindi ho provato a far eliminare una directory così:
Codice: Seleziona tutto
  $output = exec ("rm -rfv /var/www/tv/gestione/script/pippo &> /dev/null ; echo directory cancellata;");
  echo $output;

La directory non viene eliminata ma mi viene restituito "directory cancellata";

Ho provato anche con "shell_exec" e "passthru" e "system" ma i comandi non vengono eseguiti come se li scrivessi sul terminale come vorrei io...
Sapete aiutarmi???
darkstaring
Linux 2.4
Linux 2.4
 
Messaggi: 368
Iscritto il: mer ott 13, 2010 12:55
Desktop: xfce
Distribuzione: Kali Linux

Re: PHP exec shell command

Messaggioda targzeta » sab gen 12, 2013 17:44

Tieni presente che l'utente che esegue quei comandi è apache, quindi deve avere i diritti per poter eliminare la directory, altrimenti non lo fa.

Emanuele
Linux Registered User #454438
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
20/04/2013 - Io volevo Rodotà
Avatar utente
targzeta
Iper Master
Iper Master
 
Messaggi: 6186
Iscritto il: gio nov 03, 2005 14:05
Località: Carpignano Sal. (LE) <-> Pisa
Nome Cognome: Emanuele Tomasi
Slackware: current
Kernel: latest stable
Desktop: IceWM

Re: PHP exec shell command

Messaggioda ZeroUno » sab gen 12, 2013 19:41

sostituisci il "&> /dev/null" con "2>&1" così vedi se da messaggi di errore.

Tieni presente però che exec restituisce solo l'output dell'ultima riga, quindi non troveresti l'errore.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg
Codice: Seleziona tutto
1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111
Avatar utente
ZeroUno
Staff
Staff
 
Messaggi: 4412
Iscritto il: ven giu 02, 2006 13:52
Località: Roma / Castelli
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current


Torna a Programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite