linux - 如何等待 wget 和 tar 命令完成?

标签 linux ssh phpseclib

我有一个类似于下面的代码数组。

$ssh->exec('mkdir /root/example');
$ssh->exec('wget -q -P /root http://www.example.com/example.tar.bz2');
$ssh->exec('tar -xjf /root/example.tar.bz2 -C /root/example');
$ssh->exec('rm /root/example.tar.bz2');

我的问题;

下一个命令在 wget 和 tar 命令完成之前开始。如何等待 wget 和 tar 命令完成?

我试过了;

$ssh->exec('mkdir /root/example');
$ssh->exec('wget -q -P /root http://www.example.com/example.tar.bz2');
sleep(10);
$ssh->exec('tar -xjf /root/example.tar.bz2 -C /root/example');
sleep(10);
$ssh->exec('rm /root/example.tar.bz2');

我试过 sleep 命令。但不起作用。

编辑:我的英语不好。

最佳答案

尝试执行 $ssh->setTimeout(0);。 phpseclib 默认在 10 秒后超时。将超时设置为 0 将使 phpseclib 不会超时。 PHP 可能会,但 phpseclib 不会。

关于linux - 如何等待 wget 和 tar 命令完成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50219972/

相关文章:

mysql - 使用 yum 更新 mysql-server 时如何解决冲突错误

c - 发送带有修改报头的 TCP 段

java - 如何销毁Java Process的子进程

ssh - 如何修复 channel 0 上的请求失败

linux - 使用 tee 记录 ssh session 并为用户命令解析文件

linux - 并行错误 : "Image BSS overlaps adjacent EFI memory region"

linux - 为什么我在尝试列出 session 时收到来自 tmux 的 "failed to connect to server"消息?

php - 使用 phpseclib 解析 "passwd"命令

php - 将 PHP 代码实现为函数

php - Symfony2 与 phpseclib 集成