HDFS基本命令:
hadoop fs -cmd <args>
cmd: 具体的操作,基本上与UNIX的命令行相同
args:参数
HDFS资源URI格式:
scheme://authority/path
scheme:协议名,file或hdfs
authority:namenode主机名
path:路径
示例:hdfs://localhost:9000/user/chunk/test.txt
假设已经在core-site.xml里配置了 fs.default.name=hdfs://localhost:9000,则仅使用/user/chunk/test.txt即可。
hdfs默认工作目录为 /user/$USER,$USER是当前的登录用户名。
HDFS命令示例:
hadoop fs -mkdir /user/trunk
hadoop fs -ls /user
hadoop fs -lsr /user (递归的)
hadoop fs -put test.txt /user/trunk
hadoop fs -put test.txt . (复制到hdfs当前目录下,首先要创建当前目录)
hadoop fs -get /user/trunk/test.txt . (复制到本地当前目录下)
hadoop fs -cat /user/trunk/test.txt
hadoop fs -tail /user/trunk/test.txt (查看最后1000字节)
hadoop fs -rm /user/trunk/test.txt
hadoop fs -help ls (查看ls命令的帮助文档)
图中的2:文件备份数量,因为采用了两台机器的全分布模式,所以此处为2.对于目录,使用-。
在put的时候遇到问题:
put: org.apache.hadoop.hdfs.server.namenode.SafeModeException: Cannot create file/user/hadoopadmin. Name node is in safe mode.
解法:>bin/hadoop dfsadmin -safemode leave