(PHP 4, PHP 5)
escapeshellcmd — escapa metacaracteres shell
$command
)escapeshellcmd() escapa qualquer caractere em uma string que possa ser utilizado para enganar um comando shell para executar comandos arbritários. Esta função deve ser utilizada para ter certeza que quaisquer dados vindos do usuário é escapado antes que estes dados sejam passados para as funções exec() ou system(), ou para backtick operator.
Os seguintes caracteres são precedidos por uma barra invertida: #&;`|*?~<>^()[]{}$\, \x0A e \xFF. ' e " são escapados apenas se não estiverem em pares. No windows, todos estes caracteres mais % são ao invés substituidos por um espaço.
command
O comando que será escapado.
A string escapada.
Exemplo #1 Exemplo escapeshellcmd()
<?php
$e = escapeshellcmd($userinput);
// Aqui não nos preocupamos se $e tem espaços
system("echo $e");
$f = escapeshellcmd($filename);
// aqui sim
system("touch \"/tmp/$f\"; ls -l \"/tmp/$f\"");
?>