我的编程空间,编程开发者的网络收藏夹
学习永远不晚

PHP执行linux命令的6个函数

短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

PHP执行linux命令的6个函数

一般情况下,很少会用php去执行linux命令,不过特殊情况下,你也许会用到这些函数。以前我知道有二个函数可以执行linux命令,一个是exec,一个是shell_exec。其实有很多的,结合手册内容,介绍以下6个函数。

1,exec函数
<?php  
$test = "ls /tmp/test";   //ls是linux下的查目录,文件的命令
exec($test,$array);       //执行命令
print_r($array);
?>

返回结果如下:
[root@krlcgcms01 shell]# php ./exec.php  
Array  
(  
 [0] => 1001.log  
 [1] => 10.log  
 [2] => 10.tar.gz  
 [3] => aaa.tar.gz  
 [4] => mytest  
 [5] => test1101  
 [6] => test1102  
 [7] => weblog_2010_09  
)

2,system函数
<?php  
$test = "ls /tmp/test";
$last = system($test);
print "last: $last\n";
?>

返回结果:
[root@krlcgcms01 shell]# php system.php  
1001.log  
10.log  
10.tar.gz  
aaa.tar.gz  
mytest  
test1101  
test1102  
weblog_2010_09  
last:weblog_2010_09

3,passthru函数
<?php  
$test = "ls /tmp/test";
passthru($test);
?>

4,popen函数
<?php  
$test = "ls /tmp/test";
$fp = popen($test,"r");  //popen打一个进程通道
     
while (!feof($fp)) {      //从通道里面取得东西
 $out = fgets($fp, 4096);
 echo  $out;         //打印出来
}  
pclose($fp);
?>

5,proc_open函数
<?php  
$test = "ls /tmp/test";
$array =   array(
 array("pipe","r"),   //标准输入  
 array("pipe","w"),   //标准输出内容  
 array("pipe","w")    //标准输出错误  
 );  
     
$fp = proc_open($test,$array,$pipes);   //打开一个进程通道
echo stream_get_contents($pipes[1]);    //为什么是$pipes[1],因为1是输出内容
proc_close($fp);
?>

6,shell_exec函数
<?php  
$test = "ls /tmp/test";
$out = shell_exec($test);
echo $out;
?>

popen,passthru,proc_open,shell_exec的返回结果如下:
[root@krlcgcms01 shell]# php test.php  
1001.log  
10.log  
10.tar.gz  
aaa.tar.gz  
mytest  
test1101  
test1102  
weblog_2010_09

我能发现的就这几个函数,能执行linux下的命令,我想应当还有吧,欢迎大家补充。

来自:http://blog.51yip.com/php/1064.html

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

PHP执行linux命令的6个函数

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

PHP执行linux命令的6个函数

一般情况下,很少会用php去执行linux命令,不过特殊情况下,你也许会用到这些函数。以前我知道有二个函数可以执行linux命令,一个是exec,一个是shell_exec。其实有很多的,结合手册内容,介绍以下6个函数。 1,exec函数
2022-06-03

PHP常用命令执行函数是什么

这篇文章主要介绍“PHP常用命令执行函数是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“PHP常用命令执行函数是什么”文章能帮助大家解决问题。PHP命令执行函数常配合代码执行漏洞使用, 利用命令
2023-06-30

linux执行目录的命令是哪个

本篇内容主要讲解“linux执行目录的命令是哪个”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“linux执行目录的命令是哪个”吧!linux执行目录的命令是cd命令和ls命令,其中cd命令是切换
2023-07-05

如何分析Linux的6个命令

这篇文章给大家介绍如何分析Linux的6个命令,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。crypt好吧,我们一直都有crypt。顾名思义,crypt不是存放垃圾文件的地宫或墓坑,而是加密文件内容的命令。如今,“cr
2023-06-28

php中哪些函数不可以执行系统命令

php中无法执行系统命令的函数包括:exec()system()passthru()shell_exec()原因是这些函数存在安全漏洞,允许恶意攻击者执行任意命令。为了安全执行系统命令,php提供了escapeshellarg()和esca
php中哪些函数不可以执行系统命令
2024-04-26

docker cmd 执行多个带参数命令

本指南详细介绍了在Docker中执行多个带参数命令的方法。这些方法包括使用管道、&&&和||运算符、分号、exec命令和run命令。最佳实践包括将命令分组、使用清晰的名称、使用控制流运算符、分号分隔命令,以及使用exec和run命令在容器中执行命令。
docker cmd 执行多个带参数命令
2024-04-02

Python3 执行Linux Bash命令的方法

和之前C++执行linux Bash命令的方法 一样,python依然支持system调用和popen()函数来执行linux bash命令。 方法一:system调用#仅仅在一个子终端运行系统命令,而不能获取命令执行后的返回信息 impo
2022-06-04

linux多个命令一起执行的方法是什么

在Linux中,可以使用分号(; )来将多个命令串联在一起,使它们一起执行。分号的作用是分隔不同的命令,使其按顺序执行。例如:command1; command2; command3另外,还可以使用双竖线(||)和双与号(&&)来控制命令之
2023-09-15

Linux切勿执行的10个危险命令是哪些

Linux切勿执行的10个危险命令是哪些,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。  Linux命令行佷有用、很高效,也很有趣,但有时候也很危险,尤其是在你
2023-06-13

python中执行shell命令的几个方

最近有个需求就是页面上执行shell命令,第一想到的就是os.system, 代码如下:os.system('cat /proc/cpuinfo')但是发现页面上打印的命令执行结果 0或者1,当然不满足需求了。尝试第二种方案 os.pope
2023-01-31

Linux:一行代码创建一个可执行命令的 Web 服务器

因为有一个始终执行的循环使用 while true,让 nc 命令持续在端口 8080 监听浏览器请求,每次刷新时,都会执行作为参数传递给 web.sh 的脚本,其结果连同一些 HTTP 标头会传递给 nc,后者又会发送给我们的浏览器。
Linux:一行代码创建一个可执行命令的 Web 服务器
2024-04-23

怎么使用pv命令监控Linux命令的执行进度

小编给大家分享一下怎么使用pv命令监控Linux命令的执行进度,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!PV 命令PV 由Andrew Wood 开发,是 P
2023-06-16

linux怎么停止正在执行的命令

在Linux中,可以使用以下方法停止正在执行的命令:1. 使用Ctrl + C:在终端中按下Ctrl + C组合键可以停止当前正在执行的命令。这是最常用的方法。2. 使用Ctrl + Z:在终端中按下Ctrl + Z组合键可以将当前正在执行
2023-08-30

在docker中执行linux shell命令的操作

在docker中执行shell命令,需要在命令前增加sh -c,例如:docker run ubuntu sh -c 'cat /data/a.txt > b.txt'否则,指令无法被正常解析。 补充:【Docker应用】 docker中执
2022-06-03

编程热搜

目录