C语言 无法使用 popen 执行 unix 命令



我正在尝试使用 popen 从 Load Runner 运行 Unix 命令。我在下面尝试了分步的方法,他们是

步骤 1 : 我第一次尝试登录跳转服务器

fp = popen("plink.exe -ssh -l username -pw password Servername", "r");

在负载运行器中使用以下命令输出: 上次登入时间: 周四 1月 11 11:11:11 2018 从 some.machine.net

使用腻子手动输出: 使用用户名"abcdef"。 上次登入时间: 周四 1月 11 11:11:11 2018 从 some.machine.net abcdef@mymachine:~>

我成功地捕获了所需的结果

第 2 步:我想在登录跳转服务器后执行 ls 命令,所以我在 popen 中将 ls 命令附加到上述命令中

fp = popen("plink.exe -ssh -l username -pw password Servername ls", "r");

然后没有产生输出,我得到一个错误

在步骤1中,我能够捕获输出,即"上次登录:2018年1月11日星期四11:11:11 some.machine.net" 但是在步骤 2 中,当我尝试仅通过附加相同的 popen 语句来执行 ls 命令时,我收到错误。

我的目标是读取 ls 命令的输出

some_command 不追加。

popen("plink.exe -ssh -l username -pw password Servername some_command", "r")

应该改成

popen("plink.exe -ssh -l username -pw password Servername ${some_command}", "r")

最新更新