hadoop中一些常用的命令介绍
假设hadoop的安装目录hadoop_home为/home/admin/hadoop。
启动与关闭
启动hadoop
1.进入hadoop_home目录。
2.执行sh bin/start-all.sh
关闭hadoop
1.进入hadoop_home目录。
2.执行sh bin/stop-all.sh
文件操作
hadoop使用的是hdfs,能够实现的功能和我们使用的磁盘系统类似。并且支持通配符,如*。
查看文件列表
查看hdfs中/user/admin/aaron目录下的文件。
1.进入hadoop_home目录。
2.执行sh bin/hadoop fs -ls /user/admin/aaron
这样,我们就找到了hdfs中/user/admin/aaron目录下的文件了。
我们也可以列出hdfs中/user/admin/aaron目录下的所有文件(包括子目录下的文件)。
1.进入hadoop_home目录。
2.执行sh bin/hadoop fs -lsr /user/admin/aaron
创建文件目录
查看hdfs中/user/admin/aaron目录下再新建一个叫做newdir的新目录。
1.进入hadoop_home目录。
2.执行sh bin/hadoop fs -mkdir /user/admin/aaron/newdir
删除文件
删除hdfs中/user/admin/aaron目录下一个名叫needdelete的文件
1.进入hadoop_home目录。
2.执行sh bin/hadoop fs -rm /user/admin/aaron/needdelete
删除hdfs中/user/admin/aaron目录以及该目录下的所有文件
1.进入hadoop_home目录。
2.执行sh bin/hadoop fs -rmr /user/admin/aaron
上传文件
上传一个本机/home/admin/newfile的文件到hdfs中/user/admin/aaron目录下
1.进入hadoop_home目录。
2.执行sh bin/hadoop fs –put /home/admin/newfile /user/admin/aaron/
下载文件
下载hdfs中/user/admin/aaron目录下的newfile文件到本机/home/admin/newfile中
1.进入hadoop_home目录。
2.执行sh bin/hadoop fs –get /user/admin/aaron/newfile /home/admin/newfile
查看文件
我们可以直接在hdfs中直接查看文件,功能与类是cat类似
查看hdfs中/user/admin/aaron目录下的newfile文件
1.进入hadoop_home目录。
2.执行sh bin/hadoop fs –cat /home/admin/newfile
mapreduce job操作
提交mapreduce job
原则上说,hadoop所有的mapreduce job都是一个jar包。
运行一个/home/admin/hadoop/job.jar的mapreduce job
1.进入hadoop_home目录。
2.执行sh bin/hadoop jar /home/admin/hadoop/job.jar [jobmainclass] [jobargs]
杀死某个正在运行的job
假设job_id为:job_201005310937_0053
1.进入hadoop_home目录。
2.执行sh bin/hadoop job -kill job_201005310937_0053
更多hadoop的命令
上面介绍的这些hadoop的操作命令是我们最常用的。如果你希望了解更多,可以按照如下的方式获取命令的说明信息。
1.进入hadoop_home目录。
2.执行sh bin/hadoop
我们可以看到更多命令的说明信息:
usage: hadoop [--config confdir] command
where command is one of:
namenode -format format the dfs filesystem
secondarynamenode run the dfs secondary namenode
namenode run the dfs namenode
datanode run a dfs datanode
dfsadmin run a dfs admin client
fsck run a dfs filesystem checking utility
fs run a generic filesystem user client
balancer run a cluster balancing utility
jobtracker run the mapreduce job tracker node
pipes run a pipes job
tasktracker run a mapreduce task tracker node
job manipulate mapreduce jobs
queue get information regarding jobqueues
version print the version
jar <jar> run a jar file
distcp <srcurl> <desturl> copy file or directories recursively
archive -archivename name <src>* <dest> create a hadoop archive
daemonlog get/set the log level for each daemon
or
classname run the class named classname
most commands print help when invoked w/o parameters.