我通过SSH2 PHP扩展与Debian计算机进行通信。他们(不太好)记录的function ssh2_exec表明它的第四个论点是
要在目标环境中设置的名称/值对的关联数组。
我想在~
以外的其他路径上操作,以便在其他目录上执行ls
(以及让沟通更加舒适)。但是我应该设置什么?
ssh2_exec($connection, "ls", NULL, array("???" => "/var/www/"));
答案 0 :(得分:1)
他们都不是。当前路径是进程状态的一部分,而不是环境。有些shell使用PWD
环境变量来指示当前路径是什么,但它没有特殊意义 - 设置它不会做任何事情。
如果要列出不在主目录中的路径的内容,请将其作为参数传递给ls
:
ssh2_exec($connection, "ls $path");
如果您需要运行一个真正关心其工作目录的命令,请使用cd
:
ssh2_exec($connection, "cd $path; command");