質問

I'm trying to execute a shell command from php using the exec command

The following command works

echo exec('whoami');

but I need to execute the following shell command

cat > /var/www/myfolder/abc.txt
hi
hello
welcome

the problem is that the above shell command has to be executed in multiplelines. The words "hi", "hello", "welcome" are dynamic and come from php variables. Is there a workaround for this problem.

役に立ちましたか?

解決

To execute a multiline shell command in php:

passthru("bash <<'END'
        echo \"executed in new bash session\";
        pwd;
        whoami;
        exit;
        END
");

This way you could for example connect to a ssh server using php and then execute some commands there

I don't understand what you mean by cat > abc.txt. This command will empty the file.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top