① 如何通过php页面执行shell脚本
如果php允许那么大的权限,可以用 exec 函数, 不过这样做很危险。
换个思考方式, 可以php向某个文件写入一个指定数据, shell脚本定时监测这个文件,然后判断内容,再执行指定脚本
② linux如何用shell运行一个php脚本
在 Linux 下执行 php 脚本时通常是使用以下命令(视php安装路径而定):
/usr/local/php/bin/phptest.php
另外,为简化输入可把此php执行程序 到系统命令目录下:
cp/usr/local/php/bin/php/usr/sbin/
验证:输入以下命令,如正确获取 php 版本,说明操作成功。
php-v
参考:
http://www.360doc.com/content/10/1124/15/4330887_72030254.shtml
③ php如何实时显示shell脚本的输出
PHP 7 中 use 可以在一句话中声明多个类或函数或 const 了:
use some\\namespace\\{ClassA, ClassB, ClassC as C};
use function some\\namespace\\{fn_a, fn_b, fn_c};
use const some\\namespace\\{ConstA, ConstB, ConstC};
但还是要写出每个类或函数或 const 的名称(并没有像 Python 一样的 from some import * 的方法)。
④ 如何让php执行shell
php给我们提供了system(),exec(),passthru()这三个函数来调用外部的命令.
虽然这三个命令都能执行linux系统的shell命令,但是其实他们是有区别的:
system() 输出并返回最后一行shell结果。
exec() 不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面。
passthru() 只调用命令,把命令的运行结果原样地直接输出到标准输出设备上。
相同点:都可以获得命令执行的状态码
例子:system("/usr/local/bin/webalizer/webalizer");
⑤ php 执行 shell 命令,权限不足,怎么办
换其他方式吧,php是www用户去访问的,可以执行shell的话,不安全
⑥ 请问什么是shell,php程序员对它要求程度如何
一般shell多是指命令行式. 例如windows下的bat . linux下的bash .
在做系统维护, 文件处理分析的时候会用到.
php 程序员, 多少是需要了解一些的.
例如: 安装/重启apache , mysql . 配置下网络ip , 查看php日志等.
了解一点就好(当然用人单位自然是希望越熟悉越好.)
总之 , 相对于php程序员来说. 熟悉shell 是个加分项 .
⑦ 如何将PHP作为Shell脚本语言使用
我们都知道,PHP是一种非常好的动态网页开发语言(速度飞快,开发周期短……)。但是只有很少数的人意识到PHP也可以很好的作为编写Shell脚本的语言,当PHP作为编写Shell脚本的语言时,他并没有Perl或者Bash那么强大,但是他却有着很好的优势,特别是对于我这种熟悉PHP但是不怎么熟悉Perl的人。
要使用PHP作为Shell脚本语言,你必须将PHP作为二进制的CGI编译,而不是Apache模式;编译成为二进制CGI模式运行的PHP有一些安全性的问题,关于解决的方法可以参见PHP手册(http://www.php.net)。
一开始你可能会对于编写Shell脚本感到不适应,但是会慢慢好起来的:将PHP作为一般的动态网页编写语言和作为Shell脚本语言的唯一不同就在于一个Shell脚本需要在第一行生命解释本脚本的程序路径:
#!/usr/local/bin/php -q
我们在PHP执行文件后面加入了参数“-1”,这样子PHP就不会输出HTTP Header(如果仍需要作为Web的动态网页,那么你需要自己使用header函数输出HTTP Header)。当然,在Shell脚本的里面你还是需要使用PHP的开始和结束标记:
现在让我们看一个例子,以便于更好的了解用PHP作为Shell脚本语言的使用:
#!/usr/local/bin/php -q
print("Hello, world!\n");
?>
上面这个程序会简单的输出“Hello, world!”到显示器上。
一、传递Shell脚本运行参数给PHP:
作为一个Shell脚本,经常会在运行程序时候加入一些参数,PHP作为Shell脚本时有一个内嵌的数组“$argv”,使用“$argv”数组可以很方便的读取Shell脚本运行时候的参数(“$argv[1]”对应的是第一个参数,“$argv[2]”对应的是第二个参数,依此类推)。比如下面这个程序:
#!/usr/local/bin/php -q
$first_name = $argv[1];
$last_name = $argv[2];
printf("Hello, %s %s! How are you today?\n", $first_name, $last_name);
?> 具体详细的你可以向我一样在后盾人多看看就明白了,希望能帮到你,努力(๑><๑)
⑧ 我在php中执行shell命令不成功,但是直接命令行执行可以。
passthru的返回值是void,所以echo无效
要查看命令的返回值,应设置passthru的第二个参数
你可以试下
⑨ php如何执行shell脚本
这些shell命令一般服务商是不允许运行的,要不然服务器很快就让攻击掉了
⑩ php和linux shell的关系
这个问题不是菜鸟问题。
shell是相对于kernel来说的,可以认为是用户对系统的操作接口(界面)。现在的shell有csh、bash、sh等。
tty可以认为是字符终端,用户在终端,通过输入命令来操作系统。接收输入并进行解析的程序就是shell。