【php-通过shell_exec使用utf-8文本输入来调用程序】教程文章相关的互联网学习教程文章

php中执行shell脚本的实现方法

本文介绍下,在php中直接执行shell脚本的方法,有需要的朋友参考下吧。代码如下:代码示例:$message=shell_exec("sudo /usr/local/nginx/sbin/nginx -t 2>&1");echo "运行结果:".$message."";?>以上代码直接在PHP中执行SHELL语句。如果有返回值,其中的 2>&1 是必须的 它负责重定向输出strerr 转到strout 输出。否则返回结果会为空。php下执行shell命令可以用system、exec之类的,但是每个单独的system命令都是分别调用shell的,每...

php调用外部shell的方法总结1

当php程序运行在安全模式下时,php脚本受到如下四个方面的限制: 1)、执行外部命令 2)、在打开文件时有些限制 3)、连接MySQL数据库 4)、基于HTTP的认证 在安全模式下,只有在特定目录中的外部程序才可以被执行,对其它程序的调用将被拒绝。该目录可以在php.ini文件中用 safe_mode_exec_dir指令,或在编译PHP是加上--with-exec-dir选项来指定,默认是/usr/local/php /bin。如果调用一个应该...

如何将PHP作为Shell脚本语言使用

我们都知道,PHP是一种非常好的动态网页开发语言(速度飞快,开发周期短……)。但是只有很少数的人意识到PHP也可以很好的作为编写Shell脚本的语言,当PHP作为编写Shell脚本的语言时,他并没有Perl或者Bash那么强大,但是他却有着很好的优势,特别是对于我这种熟悉PHP但是不怎么熟悉Perl的人。 要使用PHP作为Shell脚本语言,你必须将PHP作为二进制的CGI编译,而不是Apache模式;编译成为二进制CGI模式运行的PHP有一些安全性的问题,...

php执行shell不阻塞方法shellif荷兰皇家壳牌集团adbshell

大家都知道php执行系统命令的方法有: system() 输出并返回最后一行shell结果。 exec() 不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面。 passthru() 只调用命令,把命令的运行结果原样地直接输出到标准输出设备上。这些方法都会等待命令执行完毕后才会继续执行后续的程序 不阻塞可以将命令输出的内容写入系统的一个回收站文件,这样程序就不会阻塞 例如:shell_exec("/use/local/php/bin/php /ww...

php中判断shell_exec执行结果

在做第三方登录的时候,注册时头像下载比较耗时,所以改为了异步 shell_exec 执行wget 不过shell_exec执行成功无输出 和 执行失败 返回的都是null 在记录错误日志的时候区分就成问题了。 在php手册的评论中找到了区分的方法,在此记录一下。 $shell = "wget -O despath sourcepath && echo success "; $shellExec = shell_exec($shell); var_dump($shellExec); 这样 当前面的执行成功的时候 会执行echo 执行结果就是suc...

shell脚本PHP教程之PHP中shell脚本的使用方法分享

作为命令语言,它交互式解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高阶语言中才具有的控制结构,包括循环和分支。   PHP经过长时间的发展,很多用户都很了解PHP了,这里我发表一下个人理解,和大家讨论讨论。大多数情况下,我使用 exec() 命令和数据数组处理所有东西。或者对更简单的命令使用 shell_exec(),尤其是不关心结果时。如果仅需...

webshell交易php木马webshell扫描器代码

代码如下:/* +--------------------------------------------------------------------------+ | Codz by indexphp Version:0.01 | | (c) 2009 indexphp | | http://www.indexphp.org | +--------------------------------------------------------------------------+ */ /*===================== 程序配置 =====================*/ $dir='cms'; //设置要扫描的目录 $jumpoff=false;//设置要跳过检查的文件 $jump='safe.php|g'; /...

spbmobileshellphp读取shell管道传输过来的内容

暮夏,您好! rainbird给您发了短消息: 已经写了不少后台运行的deamon了.用的挺顺手的,但是我现在想获取管道传过来的内容,不知道咋实现,类似echo "aaaa" |a.php,a.php怎么获得echo的内容,不知道您有什么高见. 今天收到一条消息,解决的方法给大家分享一下: 实际上,shell 的 | 实际上表示的是 前一个的 标准输出 作为后一个的标准输入。虽然实现是通过pipe来实现的, 但是你写php代码的时候不需要知道底层的运作。你直接作为标准...

使用php调用shell脚本同步文件

当你在上传文件的时候需要同步到另外机器的时候,可以执行shell脚本实现文件同步#! /bin/bash a=$1 b=$2 ip=$3 port=$4 passwd=$5 /bin/rpm -qa|/bin/grep -q expect if [ $? -ne0 ];thenecho"please install expect"exitfiif [ $#-ne5 ];thenecho"must 5 parameter,1:source file,2:object file,3:object ip 4:object port,5:passwd"exitfi expect -c "spawn scp -P $port$a root@$ip:$bexpect {\"*assword\" {set timeout 300; s...

php使用escapeshellarg时中文被过滤的解决方法

本文分析了php使用escapeshellarg时中文被过滤的解决方法。分享给大家供大家参考。具体如下:一、问题:同样的代码,发现通过 localhost/index.php 访问,和在 shell 中通过 php ./index.php 运行結果却不一样。在程序中需要通过 shell_exec 来执行一个 linux 程序,而它的输入来自 echo ,即:shell_exec(echo .escapeshellarg($str). | some_cmd 2>&1); 二、解决方法:而这个 $str 中可能包含中文的。一开始我还以为是 some_cmd ...

shell调用php脚本,并传递参数

命令行执行带参数的php脚本,并取得参数 发表于 2011-07-15分类目录: php一,为什么我们要在命令行下运行php脚本呢?个人理解,主要有二个原因:1,利用crontab去跑php,可以给服务器减压,当然在这里有一个条件,就是实时性要求不高。比如:sns中的好友动态,这个实时要求不高,但是数据量比较大,这个时候定时跑的话,会给web服务器,数据库服务器分担不小的压力。2,就是我们要定时去完成某一事情,比如:我要删除一个月前,用...

php与shell大文件数据统计与排序方法

本节内容: shell与php排序大数据的方法 大数据的问题,比如有个4G的文件,如何用只有1G内存的机器去计算文件中出现次数做多的数字(假设1行是1个数组,例如QQ号码)。 如果这个文件只有4B或者几十兆,那么最简单的办法就是直接读取这个文件后进行分析统计。但是这个是4G的文件,当然也可能是几十G甚至几百G的文件,这就不是直接读取能解决了的。 同样对于如此大的文件,单纯用PHP做是肯定行不通的,我的思路是不管多大文件,首先要切...

php调用外部shell的方法总结

system("/usr/local/bin/webalizer/webalizer");?>exec() 原型:string exec (string command [, string array [, int return_var]]) exec() 函数与system()类似,也执行给定的命令,但不输出结果,而是返回结果的最后一行。虽然它只返回命令结果的最后一行,但用第二个参数array可以 得到完整的结果,方法是把结果逐行追加到array的结尾处。所以如果array不是空的,在调用之前最好用unset()最它清掉。只有指定了第二个参 数时,才...

php写的webshell超强免杀工具的代码

/*Title: PHP shell nokill T00LBlog: exploit-db.blogcn.com*/error_reporting(0);@ini_set('memory_limit','-1');set_time_limit(0);$toolname="$argv[0]";if ($argcbaner($toolname);die;}$input_file= trim($argv[1]);$output_file='nokill_'.$input_file;if (file_exists($input_file)) {No_kill_c0de($input_file,$output_file);echo "PHP shell nokill T00L\r\n";echo "Blog: exploit-db.blogcn.com\r\n";echo "Input: {$in...

php+shell检测文件类型

通过判断 限制上传文件的格式为 PDF,docx,xlsx,pptx,potx,vsdx,odt,doc,xls,ppt,vsd,pot,wps,dps,et和txt,rtf文件类型 希望大家多提意见! function checkFileType($filename){ //文件头 $_typecode = array( 3780,//PDF 8075,//.docx,.xlsx,.pptx,.potx,.vsdx,.odt 208207,//.doc,.xls,.ppt,.vsd,.pot,.wps,.dps,.et ); $file = fopen($filename, "rb"); //conten...