php通过shell调用Hadoop的方法

1.php代码(index.php)

<!DOCTYPE html>
<html>

<!-- <style> body{background-color:red} </style> -->
<!-- <style type="text/css"> -->
<!--  body { background:url(渐变绿.jpeg); -->
<!--       width:100%; -->
<!--       height:100%; } </style> -->
<body>
<?php
header(‘Content-type: text/html; charset=UTF8‘);
#phpinfo();
$jiaoben = $_GET[‘jiaoben‘];
echo "运行Hadoop的log信息:";
$ret= system("sh /home/work/$jiaoben", $status);
if($status != 0) {
echo ‘ failed, status=‘ . "$status\n";
} else {
	echo $ret;
        echo "<br><br>";
}

?>
</body>
</html>

2.shell代码(hadoop.sh)

#!/bin/bash
echo "wordCount test start"
rm -rf ~/file_20141024
mkdir ~/file_20141024
cd ~/file_20141024
echo "Hello World" > file1.txt
echo "Hello China Beijing" > file2.txt
cd /home/work/hadoop/bin
./hadoop dfs -rmr input_20141024
./hadoop dfs -rmr output_20141024
./hadoop fs -mkdir input_20141024
#hadoop fs -chomod -R 777 /input_20141024
./hadoop fs -put ~/file_20141024/file*.txt input_20141024
./hadoop jar /home/work/hadoop/hadoop-examples-1.1.2.jar wordcount input_20141024 output_20141024
./hadoop fs -ls output_20141024
./hadoop fs -cat output_20141024/part-r-00000
echo "wordCount test end"

3. 訪问http://ip:8888/index.php?

jiaoben=hadoop.sh

查询结果:

/user/work/output_20141024/part-r-00000 Beijing 1 China 1 Hello 2 World 1

时间: 2024-10-05 09:37:27

php通过shell调用Hadoop的方法的相关文章

在使用windows调用Hadoop 错误 /bin/bash: line 0: fg: no job control一般解决方法

在使用windows调用Hadoop yarn平台的时候,一般都会遇到如下的错误: 2014-05-28 17:32:19,761 WARN org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor: Exception from container-launch with container ID: container_1401177251807_0034_01_000001 and exit code: 1 org.

使用shell调用python中的函数

最近遇到一个需求,需要通过shell调用python中的一个函数,发现其实也挺简单的: python脚本如下: test.py: import ConfigParser config = ConfigParser.ConfigParser() config.read("test.conf") def get_foo(): return config.get("locations", "foo") def get_bar(): return con

python中执行shell的两种方法总结

这篇文章主要介绍了python中执行shell的两种方法,有两种方法可以在Python中执行SHELL程序,方法一是使用Python的commands包,方法二则是使用subprocess包,这两个包均是Python现有的内置模块.需要的朋友可以参考借鉴,下面来一起看看吧. 一.使用python内置commands模块执行shell commands对Python的os.popen()进行了封装,使用SHELL命令字符串作为其参数,返回命令的结果数据以及命令执行的状态: 该命令目前已经废弃,被s

shell调用python脚本,并且向python脚本传递参数

1.shell调用python脚本,并且向python脚本传递参数: shell中: python test.py $para1 $para2 python中: import sys def main($canshu1, $canshu2) ..... main(sys.argv[1], sys.argv[2]) 2.使用shell调用python中的函数: python脚本如下: test.py: import ConfigParser config = ConfigParser.Config

在linux下sh批处理文件调用java的方法

解密 java -classpath collection-impl-0.0.1.jar com.ai.toptea.collection.message.DESEncrypt 1EFE46638952F577 dec 加密 java -classpath collection-impl-0.0.1.jar com.ai.toptea.collection.message.DESEncrypt 123456 enc 本文主要介绍在linux下sh批处理文件调用java的方法. shell编程的代

Android--绑定服务调用服务的方法

Service按照其启动的方式,可分为两种: 1.Started Started的Service,通过在Application里用startService(Intent intent)方法来启动.这种类型的Service一经启动,会在后面无休止地运行,即使启动它的Activity被Destroy掉.要停止此类型的Service,可在Service中调用stopSelf()或在Application中调用stopService(Intent intent),要不然就只能等Android系统在系统资

Office word 2013中直接调用MathType的方法

Office word 2013中直接调用MathType的方法 | 浏览:4403 | 更新:2014-02-20 14:45 | 标签: word 使用Office word 2013的用户肯定早已注意到在编辑文档时MathType无法直接调用,但是点击文档中的公式时能够跳出MathType的公式编辑窗口.其实,这一问题可以通过简单设置让 MathType 集成到Office Word 2013中. 工具/原料 Office word 2013软件.MathType软件 方法步骤 安装Mat

struts2在配置文件中调用Action的方法返回值

struts2在配置文件中可以调用Action的方法返回值 1.Action中 //文件下载名 public String getDownloadFileName(){ String downloadFileName = ""; String filename = fileName + ".xls"; try { downloadFileName = URLEncoder.encode(filename,"UTF-8"); } catch (Un

Lua 调用 Opencv 的方法

Lua 调用 Opencv 的方法 最近想用 Lua 调用 Opencv 进行相关像素级操作,如:bitwise_and 或者 bitwise_or,从而完成图像 IoU 的计算. 那么,怎么用 Lua 调用 Opencv 呢? 查了 Torch 的官方文档,发现只有这么几个可以调用的包: 链接: https://github.com/torch/torch7/wiki/Cheatsheet 然后,你点击一个进去,发现有这么一个方法,可以安装对应的 Opencv 包:  然后,你就在终端里输入: