escapeshellcmd() заменяет мнемониками любые символы в строке, что может
использоваться для выполнения в оболочке произвольных команд. Эта функция
должна использоваться для гарантирования того, что любые данные, приходящие от
пользователя, escape-ируются, прежде чем передаются функциям exec() или
system(), или
операции backtick. Стандартное использование таково:
$e = escapeshellcmd($userinput);
system("echo $e"); // здесь нас не волнует, имеются ли пробелы в $e
$f = escapeshellcmd($filename);
system("touch "/tmp/$f"; ls -l "/tmp/$f""); // а здесь волнует,
//поэтому используем кавычки