如何通过PHP执行linux命令
打开linux命令行。找到linux环境下,php可执行文件的目录。如图所示。我的目录为/usr/local/server/php/bin,将这个目录记下。
我们可以直接在Linux命令行使用phpinfo()这个十分有价值的调试工具而不需要从文件来调用,只需执行以下命令:php -r phpinfo();PHP调试工具 这里,‘-r‘ 选项会让PHP代码在Linux终端中不带和标记直接执行。
PHP 中执行系统命令有几种方式:system():和 C 语言中的 system() 函数的用法是一样的,参数为命令行,成功则返回命令输出的最后一行,失败则返回 FALSE。shell_exec():执行命令,然后返回命令执行后的 stdout 输出。
php执行linux的命令用system或exec就可以,只要打开safemode,但是一些系统底层的没有执行命令的不允许调用哦,实在有些命令例如zip之类想用的话,直接用php写入一个shell脚本文件再exec那个sh就好了。
我们采取的办法是,用VC写个服务,该服务的运行身份是root,也就是给其最大权限,php调用该服务做操作。当然还有另外的办法,这是我的猜测,你不妨试看看,把php的运行用户改为root,这样可能会存在一定的风险。
每小时的第一分执行 /home/myhome/printhello 这个文件 查看crontab:crontab -l 删除crontab:crontab -r 我们就知道该怎么利用PHP和crontab命令作Linux自动执行脚本了。
如何让php执行shell
1、php给我们提供了system(),exec(),passthru()这三个函数来调用外部的命令。
2、方法一:使用linux的定时任务shell脚本,使用shell命令,curl指定接口,来链接数据库并存储到数据库。方法二:指定一个路由地址,然后使用网上的一些监控服务平台,例如360等来定时请求自己写好的路由,来定时处理业务。
3、文件目录权限之类的都好了的 首先看你的nginx用户叫啥名字lsof -i:80 执行visudo命令 给www用户添加root权限并且不需要密码 这样就可以访问了,这个只是解决无权限访问的问题,必须加sudo。
4、php.ini的配置有问题。由于php是0以上的版本,取消了安全模式,所以考虑PHP.ini文件配置。打开php配置文件,里面有一行disabel_function的值,此处记录了禁止运行的函数,在里面讲exec和shell_exec,system等函数删除。
5、system() 输出并返回最后一行shell结果。exec() 不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面。passthru() 只调用命令,把命令的运行结果原样地直接输出到标准输出设备上。
如何使用PHP调用SHELL命令?调用后并且执行SHELL命令?
1、解除sysyem() passthru() exec()等函数禁用。执行passthru(ps -ef);可以得到这条命令的输出内容。正则得到所需内容,然后再调用这些函数执行操作。具体用法翻翻手册。
2、system() 输出并返回最后一行shell结果。exec() 不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面。passthru() 只调用命令,把命令的运行结果原样地直接输出到标准输出设备上。
3、php给我们提供了system(),exec(),passthru()这三个函数来调用外部的命令。
4、php的内置函数exec,system都可以调用系统命令(shell命令),当然还有passthru,escapeshellcmd等函数。
5、描述:sh 命令调用缺省 shell 并使用它的语法和标志。链接到 /usr/bin/sh 路径的 shell 是缺省的 shell。
请教知道的老师,php执行这个shell_exec安全吗?
如PHP中的system、exec. shell exec等,当用户可以控制命令执行函数中的参数时,将可以注入恶意系统命令到正常命令中,造成命令执行攻击。
在php.ini文件中进行以下配置: register_globals = Off 如果这个配置选项打开之后,会出现很大的安全隐患。
safe_mode_exec_dir = /usr/local/php/exec 然后拷贝程序到该目录,那么php脚本就可以用system等函数来执行该程序。而且该目录里的shell脚本还是可以调用其它目录里的系统命令。
php.ini的配置有问题。由于php是0以上的版本,取消了安全模式,所以考虑PHP.ini文件配置。打开php配置文件,里面有一行disabel_function的值,此处记录了禁止运行的函数,在里面讲exec和shell_exec,system等函数删除。
php调用shell的方法技巧
system() 输出并返回最后一行shell结果。exec() 不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面。passthru() 只调用命令,把命令的运行结果原样地直接输出到标准输出设备上。
解除sysyem() passthru() exec()等函数禁用。执行passthru(ps -ef);可以得到这条命令的输出内容。正则得到所需内容,然后再调用这些函数执行操作。具体用法翻翻手册。
php 在交互式shell里,你可以使用 tab 键对函数名,内置变量,类名,静态方法等进行自动补全操作。需要注意的是,Interactive Shell 和 Interactive Mode 并不是一个东西,尽管名称和功能都很相似。
php给我们提供了system(),exec(),passthru()这三个函数来调用外部的命令。
方法一:使用linux的定时任务shell脚本,使用shell命令,curl指定接口,来链接数据库并存储到数据库。方法二:指定一个路由地址,然后使用网上的一些监控服务平台,例如360等来定时请求自己写好的路由,来定时处理业务。
描述:sh 命令调用缺省 shell 并使用它的语法和标志。链接到 /usr/bin/sh 路径的 shell 是缺省的 shell。