如何隐藏system()输出

2024-03-11

我正在 Windows XP 上工作。我可以通过调用自动执行 ssh 会话的 TCL 脚本,通过浏览器成功运行 system() 命令。我还从脚本返回一个值。但是我的问题是脚本将整个 ssh 会话转储到浏览器中。

我的 php 脚本如下所示:

$lastline=system('"C:\tcl\bin\tclsh.exe" \path to file\filename.tcl '.$username.' '.$pass,$val);  

文件名.tcl:

spawn plink -ssh $user@$host   
expect "password:"  
send "$pass\r"  
expect "\prompt:/->"   
set $return_value [string compare /..string../ $expect_out(buffer)]   
/...some code...this runs fine/  
exit $return_value   

一切运行良好,我正确返回 $return_value 但 php 文件在浏览器中打印整个 ssh 会话的执行结果,如下所示:

使用用户名“admin”。[电子邮件受保护] /cdn-cgi/l/email-protection密码: === /*一些文字*/ === \提示:/->.../一些文字/

我想阻止 system() 函数在我的浏览器中打印此内容
我已经使用了 shell_exec() 函数,但它返回整个 ssh 会话结果(我已在 tcl 脚本中解析并获得了返回到 php 脚本的精确值) 有没有一种方法可以在不使用 shell_exec() 而是使用 system() 的情况下做到这一点

提前致谢


The 系统文档() https://www.php.net/manual/en/function.system.php具体说:

执行外部程序并显示输出

该页面上列出了替代方案。如果你使用执行函数 https://www.php.net/manual/en/function.exec.php相反,它只会执行命令而不显示任何输出。

Example:

<?php
echo "Hello, ";
system("ls -l");
echo "world!\n";
?>

将显示输出system:

$ php -q foo.php
Hello, total 1
-rw-r--r-- 1 bar domain users 59 Jul 15 16:10 foo.php
world!

使用时exec将不会显示任何输出:

<?php
echo "Hello, ";
exec("ls -l");
echo "world!\n";
?>

$ php -q foo.php
Hello, world!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何隐藏system()输出 的相关文章

随机推荐

  • Windows:如何获取相机支持的分辨率?

    因此 为了获取相机列表并让用户选择一个 C Boost dshow Windows 我使用这样的代码 include StdAfx h include list h include
  • 将 1 通道图像转换为 3 通道图像

    我正在尝试在 OpenCV 2 3 1 中将 1 通道图像 16 位 转换为 3 通道图像 我在使用合并功能时遇到问题并收到以下错误 Mat temp tmp2 Mat hud tmp2 cv ptr gt image tmp2 conve
  • 使用decode() 与正则表达式来转义该字符串

    我有以下字符串 我正在尝试找出转义它的最佳实践 该解决方案必须有点灵活 因为我从 API 接收此输入 并且我不能绝对确定当前的字符结构 n相对于 r 将永远是相同的 If it ain t broke don t fix it nWent
  • 创建实用程序类?

    我对 OOP 非常陌生 并且正在尽最大努力使事情严格基于类 同时使用良好的编码原则 我现在已经进入我的项目了 我有很多通用方法想要放入实用程序类中 有没有创建实用程序类的最佳方法 public class Utilities int tes
  • 删除不是 .isin('X') 的行[重复]

    这个问题在这里已经有答案了 抱歉 刚刚进入 Pandas 这似乎应该是一个非常直接的问题 我怎样才能使用isin X 删除行are in列表X 在 R 中我会写 which a in b 你有很多选择 整理一下上面的一些答案和接受这篇文章的
  • S3(亚马逊简单存储系统)存储价格是如何计算的?

    我不太确定这是否是解决这个问题的正确堆栈交换站点 但我发现没有更适合的站点 我计划在下一个项目中使用 S3 但我不确定存储的价格实际上是如何计费的 如果我只是使用 S3 来放入千兆字节的数据并且几乎从不删除数据 那么我不会有任何问题 但事实
  • iOS 中的 Facebook 发帖错误

    在这里 我尝试使用以下代码向 Facebook 添加帖子 FBAppCall appCall FBDialogs presentShareDialogWithLink urlToShare name Title caption nil de
  • VSTS + 八达通部署?为什么我看到很多 CI/CD 设置都同时使用?

    我是一名正在转向 DevOps 的开发人员 通过观察 我注意到许多开发商店已经开始使用 Octopus Deploy 和 Azure Devops Services AzDo 以前称为 VSTS 或者他们正在启动新项目来设置 devops
  • scanf() 在操作系统中如何工作?

    我一直想知道 scanf printf 在硬件和操作系统级别实际上是如何工作的 数据在哪里流动以及操作系统在这些时间里到底在做什么 操作系统进行哪些调用 等等 scanf 和 printf 是 libc C 标准库 中的函数 它们分别调用
  • Vue.js 如何设置 :id 前缀字符串?

    class tab title v on click tab v for tabTitle index in tabTitleList id index 我在 vue 社区中找到了这个示例 但在我的情况下 我希望我的 id 有一个前缀 而不
  • 如何让 css3 border-image 在 IE9 中工作?

    我正在使用 border image 它适用于除 IE 之外的所有浏览器 对于 IE 版本 7 和 8 我有 css3pie 它可以正常工作 但我一直没能找到任何插件让它在 IE9 中工作 有没有办法可以破解它 使其在 IE9 中也能工作
  • 自定义后退指示图像和 iOS 11

    我在我的应用程序中使用自定义后退按钮 这个自定义后退按钮是全局设置的 如下所示 UINavigationBar appearance backIndicatorImage UIImage named Back withRenderingMo
  • Flutter - 如何更改 AppBar 高度并对齐标题垂直中心?

    我需要更改我的 flutter 应用程序中的应用栏高度 我使用这段代码 Widget build BuildContext context return Scaffold appBar PreferredSize preferredSize
  • 了解 scipy.optimize.basinhopping 的输出

    我正在使用 scipy optimize basinhopping 来最小化函数 这是我得到的 Out 96 nfev 162178 minimization failures 2501 fun 4 4702905615653705 x a
  • 当我尝试通过“http://localhost/xampp/htdocs/index.html”打开 HTML 文件时,它说无法连接到 localhost

    我已经安装了 XAMPP 有一个htdocs文件夹及其内部index html文件 当我尝试通过浏览器打开它时http localhost xampp htdocs index html它说 无法连接到本地主机 怎么了 代替 http lo
  • 将Java游戏转换为Applet;无法加载图片

    所以我用 Java 做了一个相当大的游戏 我打算把它放在我的网站上 所以我把它搞乱了 把它变成了一个小程序 它启动并运行得很好 唯一的问题是它不会加载任何图片 这是我目前正在做的方式 请记住 这是一个 JPanel 扩展类 我在小程序类中创
  • Ruby 中的 class << self 习惯用法

    什么是class lt lt self do in Ruby 首先 class lt lt foo语法打开foo的单例类 eigenclass 这允许您专门化在该特定对象上调用的方法的行为 a foo class lt lt a def i
  • Python Gtk.Entry 占位符文本

    我有一个登录窗口 有两个 gtk Entry 对象 一个用于用户名 一个用于密码 我如何向条目添加一些幽灵文本 因此条目中写有 用户名 但如果您单击内部 文本就会消失 从 Gtk 3 2 开始 可以设置占位符文本 http develope
  • IPython shell 的换行问题

    如果我在 IPython 中运行了很长的一行 并尝试调用它 使用向上箭头 或在当前行的开头处退格 则它显示不正确 全部挤成一行 例如 在下面的会话中我写了很长的一行 1 输入了一个有点空白的行 2 然后向上箭头两次以获得print网上声明
  • 如何隐藏system()输出

    我正在 Windows XP 上工作 我可以通过调用自动执行 ssh 会话的 TCL 脚本 通过浏览器成功运行 system 命令 我还从脚本返回一个值 但是我的问题是脚本将整个 ssh 会话转储到浏览器中 我的 php 脚本如下所示 la