草庐IT

language-Shell

全部标签

php - 如何忽略 shell_exec 中的错误?

我在PHP中得到shell命令的输出为$str=shell_exec("command");并在终端中运行PHP脚本。当shell命令返回错误时,它会打印在终端上。我如何告诉shell_exec只返回命令输出而不返回任何错误输出? 最佳答案 您只需将stderr重定向到/dev/null即可丢弃错误输出$str=shell_exec("command2>/dev/null");非错误输出-stdout-将像以前一样存储到$str中。请注意,您不需要使用@运算符抑制shell_exec上的错误或将其包装到try-catchblock,

php - 转义 Shell echo

我试着做我的研究,有很多调用shell命令的方法,还有更多的方法来去除有害字符,我正在使用stackoverflow寻求专家的最佳推荐。我希望找到像我见过的其他语言那样的东西,所以向命令发送参数实际上是通过函数传递的,例如:do_command("ls","-l",$Directory);它会为您处理$Directory变量中的任何有害内容。我还没有用PHP找到这个。这是我正在使用的代码:我知道有一个内置的PHP邮件功能几乎可以解决这个问题,但我正在运行多个SMTP服务器和msmtp是我使用的一个程序,它根据发送电子邮件的“帐户”发送电子邮件。在这种情况下,它将是“meyers”帐户。

php - 使用 PHP 而不是 shell 创建新的 HTTP 身份验证凭据

我知道可以通过这个shell脚本添加新的HTTP身份验证凭据:htpasswd-c.htpasswdtesting是否可以使用PHP脚本实现相同的目的?我知道我可以使用常规的PHP身份验证系统,但这不是我想要的。 最佳答案 您可以使用system执行此命令或exec添加您的用户。我创建了一个可能适合您的代码片段:请记住,htpasswd工具应该在您的PATH中 关于php-使用PHP而不是shell创建新的HTTP身份验证凭据,我们在StackOverflow上找到一个类似的问题:

php - 如何将 PHP 变量传递给 Shell 脚本?

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:passparameterstophpwithshell我在shell脚本中运行一个php脚本#!/bin/shphpfile.phpShell将运行脚本并显示php脚本的输出,但是我如何将php脚本中定义的变量传递到shell脚本中以在其中使用(以供shell进一步处理)?例如,考虑一个php文件如何将$test的值传递给shell脚本#!/bin/shphpconfig.phpecho$test更新:建议的方法基于打印变量。我不想打印任何东西,因为php脚本还有其他应用程序(在其他php脚本中被inclu

php - 限制 shell_exec 的执行时间

我有一个包含以下代码的exe文件:同时(1)printf("你好\n");我正在使用shell_exec通过php执行这个exe$output=shell_exec('C:/Users/thekosmix/Desktop/hello.exe2>&1');echo$output;现在脚本执行了很长时间,直到我从任务管理器中终止进程并给出fatalerror:(fatalerror:第7行C:\xampp\htdocs\shell\index.php中允许的134217728字节内存耗尽(尝试分配133693440字节))我希望脚本(或此函数)在给定的持续时间内运行并打印在持续时间内生成的

php - shell 脚本 - 解释代码

我只是shell脚本的初学者。我正在阅读我同事的代码,但我不知道以下代码的含义。任何人都可以帮助我了解以下代码的含义,特别是RESULT行。#!/bin/bashDATETIME=$(date);LOGFILE="/var/www/ema/services/generate.log";ENDRESULT="DONE";RESULT=$(curl-s127.0.0.1/services/generatereport.php);if[["$RESULT"=~"$ENDRESULT"]];thenRESULT="GenerationEnded";echo"["$DATETIME"]"$RES

php - 亚马逊 MWS : How to specify the language of _GET_MERCHANT_LISTINGS_DATA_

最近我尝试使用ReportType:_GET_MERCHANT_LISTINGS_DATA_从多个市场获取所有亚马逊列表。对于MarketplaceIdsA1PA6795UKMFR9(德语)A1RKKUPIHCS9HS(ES)A1F83G8C2ARO7P(英国)响应列如下:item-nameitem-descriptionlisting-idseller-skupricequantityopen-dateimage-urlitem-is-marketplaceproduct-id-typezshop-shipping-feeitem-noteitem-conditionzshop-ca

php - PHP 中的 shell_exec 返回空字符串

shell_exec和exec没有返回任何内容。我不知道出了什么问题。这是一些代码:echo'test:';$output=shell_exec('whoami');var_export($output,TRUE);echoPHP_EOL.''.PHP_EOL;这是输出的来源test2:我无法控制主机,但我相信他们正在运行SuPHP。根据phpinfo,safe_mode已关闭。从SSH运行whoami输出预期值。我很迷茫。知道如何调试吗? 最佳答案 您永远不会打印$output变量。当您使用true第二个参数调用时,var_exp

php - shell_exec() - 执行 php 脚本时出错

当我尝试使用shell_exec()执行PHP脚本时,它不起作用。在error_log文件中显示:PHPWarning:shell_exec()[function.shell-exec]:Unabletoexecute'php/home/snabbsam/public_html/.....系统Centosshell_exec与clamscan配合使用shell_exec()作用于clamav的clamscan()函数。但它不执行PHP脚本我检查过的内容:PHPsafe_mode已关闭shell_exec()不存在于php.ini的disable_functions中尝试按照https:

php - 在 PHP 中执行 shell 命令而不等待结果

我在执行shell命令时遇到问题。问题是我想运行命令exec('du-sh/var/www/backups/*>backups.log')但我只想按“开始”并阅读backups.log稍后。现在,当我按下按钮时,我必须等到它完成,所以页面会等到脚本完成。 最佳答案 尝试通过像这样添加“&”在后台启动进程:exec('du-sh/var/www/backups/*>backups.log&'); 关于php-在PHP中执行shell命令而不等待结果,我们在StackOverflow上找到一