php执行shell不阻塞方法 shell if 荷兰皇家壳牌集团 adb shell
Jul 29, 2016 am 08:52 AM大家都知道php执行系统命令的方法有:
system() 输出并返回最后一行shell结果。
exec() 不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面。
passthru() 只调用命令,把命令的运行结果原样地直接输出到标准输出设备上。
这些方法都会等待命令执行完毕后才会继续执行后续的程序
不阻塞可以将命令输出的内容写入系统的一个回收站文件,这样程序就不会阻塞
例如:
<code>shell_<span>exec</span>(<span>"/use/local/php/bin/php /www/t.php > /dev/null 2>&1 &"</span>);</code>
shell中可能经常能看到:>/dev/null 2>&1
命令的结果可以通过%>的形式来定义输出
/dev/null 代表空设备文件
代表重定向到哪里,例如:echo “123” > /home/123.txt
1 表示stdout标准输出,系统默认值是1,所以”>/dev/null”等同于”1>/dev/null”
2 表示stderr标准错误
& 表示等同于的意思,2>&1,表示2的输出重定向等同于1
那么本文标题的语句:
1>/dev/null 首先表示标准输出重定向到空设备文件,也就是不输出任何信息到终端,说白了就是不显示任何信息。
2>&1 接着,标准错误输出重定向等同于 标准输出,因为之前标准输出已经重定向到了空设备文件,所以标准错误输出也重定向到空设备文件。
以上就介绍了php执行shell不阻塞方法,包括了shell方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Bagaimana untuk memasang Classic Shell pada Windows 11?
![Explorer.exe tidak bermula pada permulaan sistem [Betulkan]](https://img.php.cn/upload/article/000/887/227/168575230155539.png?x-oss-process=image/resize,m_fill,h_207,w_330)
Explorer.exe tidak bermula pada permulaan sistem [Betulkan]

Arahan PowerShell gagal dengan isu HRESULT 0x80073D02 dibetulkan

Cara yang berbeza untuk menjalankan fail skrip shell pada Windows

Bagaimana untuk memadamkan baris dengan cepat pada penghujung fail dalam Linux

Super tegar! 11 contoh skrip Python dan Shell yang sangat praktikal!

Berikut ialah pembetulan untuk Open Shell Windows 11 isu tidak berfungsi

Cara memasang Open Shell untuk memulihkan menu Mula klasik pada Windows 11
