搜索

首页  >  问答  >  正文

如何使用`exec`在bash中执行多个步骤的命令

我有一个多步骤的命令,它在过程中会要求几个问题。我需要在代码中执行它。

php command.php
> 你叫什么名字?
User Smith
> 你多大了?
25
> 你已经够大了!

但是当我用 exec 调用它时,它就会卡住。

我期望的是:

<?php

$result = exec('php command.php')->next('User Smith')->next('25');

if ($result->response === '你已经够大了!') echo "Yahoo";
else  echo "哦不!";

P粉659378577P粉659378577309 天前398

全部回复(1)我来回复

  • P粉464113078

    P粉4641130782024-01-30 09:38:26

    我们可以使用管道运算符来链接命令。我们可以像这样做:

    exec('(echo 'User Smith' & echo '25') | php command.php')

    方向是从右到左。

    将多个命令管道到一个单独的命令

    回复
    0
  • 取消回复