Команда не работает, если выполняется с php с переменными. Но если я запустил его с терминала или с php (exec или shell_exec) без переменных, он будет работать. Это не работает:Php exec или shell_exec не работает при выполнении команды lftp
$command = 'lftp -c "open -u'.$user.','.$password.' -p xxx sftp://xx.xx.xx.xx; put -O /folder1 folder2/'.$fileName.';"';
exec($command);
var_dump (shell_exec ($ команда)) -> печать: NULL
Это работает:
$command = 'lftp -c "open -u user,password -p 6710 sftp://xx.xx.xx.xx; put -O /folder1 folder2/file.txt;"';
exec($command);
Благодаря
Есть много подобных вопросов. Я бы рекомендовал искать. Например: https://stackoverflow.com/questions/8527817/updated-php-exec-system-or-passthru-all-remove-single-or-double-quotes, https://stackoverflow.com/questions/6780285/php-shell-exec-not-printing-dynamic-output-only-prints-static-echo-text? rq = 1, https://stackoverflow.com/questions/20107147/php-reading-shell-exec-live -output и т. д. –