我可以通过 ssh 访问其他 Suse 盒子,并且我想列出 suse 盒子上的特定目录。它将从其他 suse box 完成。稍后我将从 php 运行它。
这样的事情可能吗?
答案1
ssh
您只需将命令作为最后一个参数发送到 ssh 命令即可返回任何远程命令的输出:
ssh user@host 'ls /path/to/dir'
如果您有基于密钥的身份验证设置,则无需输入密码即可完成此操作。
然而,解析 的输出ls
始终是一个坏主意,听起来您可能有一个更奇特的用例。有一个名为 SSHFS 的文件系统,它允许您挂载几乎任何可以通过 ssh 访问的文件系统。您可以挂载远程目录,以便您的 php 脚本可以对其进行操作,就好像它是一组本地文件和目录一样。
答案2
对的,这是可能的。 SSH 客户端通常采用可选参数来指定要执行的命令。例如:
ssh user@remoteserver "ls particulardirectory"