为了每次执行Hadoop的时候,不必须要前者加上hadoop的安装的绝对路径,要做的事情就是将其安装路径加入到PATH中,这样就可以直接执行hadoop命令。
如下:
vim /etc/profile中加入一句
export HADOOP_INSTALL=/usr/local/hadoop1.1.2
注意这里要写HADOOP_INSTALL,因为如果写HADOOP_HOME会在执行命令的时候提醒该已经deprecated
然后将其bin加入到PATH中
export PATH=$HADOOP_INSTALL/bin:$PATH
在使用hadoop命令的时候,必须要保证Hadoop服务启动了。
基本文件命令:格式为:hadoop fs -cmd <args>
HDFS有一个默认的工作目录 /user/$USER,$USER就是当前登录的用户名,只有将文件放入HDFS上后,才可以运行Hadoop程序来处理它。
基本的参数如下,省略了前面的hadoop fs
注意这里的path不用加上/user/$USER,默认会自动的创建父目录
在利用hadoop命令的时,默认的工作路径就是在/user/$USER
1. -ls path
列出path目录下的内容,包括文件名,权限,所有者,大小和修改时间。
2. -lsr path
与ls相似,但递归地显示子目录下的内容。
3. -du path
显示path下所有文件磁盘使用情况下,用字节大小表示,文件名用完整的HDFS协议前缀表示。
4. -dus path
与-du相似,但它还显示全部文件或目录磁盘使用情况
5. -mv src dest
在HDFS中,将文件或目录从HDFS的源路径移动到目标路径。
6. -cp src dest
在HDFS中,将src文件或目录复制到dest。
7. �Crm path
删除一个文件或目录
8. �Crmr path
删除一个文件或递归删除目录
注意:这里的mv cp操作的源路径和目的路径都是在HDFS中的路径文件
9. �Cput localSrc dest
将本地文件或目录localSrc上传到HDFS中的dest路径。
10. �CcopyFromLocal localSrc dest
与-put命令相同
11. �CmoveFromLocal localSrc dest
将文件或目录从localSrc上传到HDFS中的dest目录,再删除本地文件或目录localSrc。
12 �Cget [-crc] src localDest
将文件或目录从HDFS中的src拷贝到本地文件系统localDest。
13 �Cgetmerge src localDest [addnl]
将在HDFS中满足路径src的文件合并到本地文件系统的一个文件localDest中。
14 �Ccat filename
显示文件内容到标准输出上。
15. -copyToLocal [-crc] src localDest
与-get命令相同。
16 -moveToLocal [-crc] src localDest
与-get命令相似,但拷贝结束后,删除HDFS上原文件。
17 -mkdir path
在HDFS中创建一个名为path的目录,如果它的上级目录不存在,也会被创建,如同linux中的mkidr �Cp。
18 -setrep [-R] [-w] rep path
设置目标文件的复制数。
19 -touchz path
创建一个文件。时间戳为当前时间,如果文件本就存在就失败,除非原文件长充为0。
20 -test �C[ezd] path
如果路径(path)存在,返回1,长度为0(zero),或是一个目录(directory)。
21 �Cstat [format] path
显示文件所占块数(%b),文件名(%n),块大小(%n),复制数(%r),修改时间(%y%Y)。
22 �Ctail [-f] file
显示文件最后的1KB内容到标准输出。
23 �Cchmod [-R] [owner][:[group]] path…
递归修改时带上-R参数,mode是一个3位的8进制数,或是[augo]+/-{rwxX}。
24 �Cchgrp [-R] group
设置文件或目录的所有组,递归修改目录时用-R参数。
25 �Chelp cmd
显示cmd命令的使用信息,你需要把命令的“-”去掉