1. hdfs命令风格
HDFS命令有两种风格:
- hadoop fs开头的
- hdfs dfs开头的
两种命令均可使用,效果相同
1.1 常用命令
-
如何查看hdfs或hadoop子命令的帮助信息,如ls子命令
hdfs dfs -help ls hadoop fs -help ls
-
查看hdfs文件系统中已经存在的文件。对比linux命令ls
hdfs dfs -ls / hadoop fs -ls /
-
在hdfs文件系统中创建文件
hdfs dfs -touchz /words.txt
-
向HDFS文件中追加内容
hadoop fs -appendToFile edit1.xml /edits.txt #将本地磁盘当前目录的edit1.xml内容追加到HDFS根目录 的edits.txt文件
-
查看HDFS文件内容
hdfs dfs -cat /words.txt
-
从本地路径上传文件至HDFS
#用法:hdfs dfs -put /本地路径 /hdfs路径 hdfs dfs -put hadoop-2.7.3.tar.gz / hdfs dfs -copyFromLocal hadoop-2.7.3.tar.gz / #根put作用一样 hdfs dfs -moveFromLocal hadoop-2.7.3.tar.gz / #根put作用一样,只不过,源文件被拷贝成功后,会被删除
-
在hdfs文件系统中下载文件
hdfs dfs -get /hdfs路径 /本地路径 hdfs dfs -copyToLocal /hdfs路径 /本地路径 #根get作用一样
-
在hdfs文件系统中创建目录
hdfs dfs -mkdir /shell
-
在hdfs文件系统中删除文件
hdfs dfs -rm /edits.txt hdfs dfs -rm -r /shell
-
在hdfs文件系统中修改文件名称(也可以用来移动文件到目录)
hdfs dfs -mv /xcall.sh /call.sh hdfs dfs -mv /call.sh /shell
-
在hdfs中拷贝文件到目录
hdfs dfs -cp /xrsync.sh /shell
-
递归删除目录
hdfs dfs -rmr /shell
-
列出本地文件的内容(默认是hdfs文件系统)
hdfs dfs -ls file:///home/zsc/
-
查找文件
# linux find命令 find . -name 'edit*' # HDFS find命令 hadoop fs -find / -name part-r-00000 # 在HDFS根目录中,查找part-r-00000文件
1.2 总结
-
输入hadoop fs 或hdfs dfs回车,查看所有的HDFS命令
-
许多命令与linux命令有很大的相似性
-
有用的help命令,如查看ls命令的使用说明:hadoop fs -help ls
2. hdfs与getconf结合使用
-
获取NameNode的节点名称(可能有多个)
hdfs getconf -namenodes
-
获取hdfs最小块信息
hdfs getconf -confKey dfs.namenode.fs-limits.min-block-size
-
查找hdfs的NameNode的RPC地址
hdfs getconf -nnRpcAddresses
3. hdfs与dfsadmin结合使用
-
同样要学会借助帮助信息
hdfs dfsadmin -help safemode
-
查看hdfs dfsadmin的帮助信息
hdfs dfsadmin
-
查看当前的模式
hdfs dfsadmin -safemode get
-
进入安全模式
hdfs dfsadmin -safemode enter
4. hdfs与fsck结合使用
-
fsck指令显示HDFS块信息
hdfs fsck /02-041-0029.mp4 -files -blocks -locations # 查看文件02-041-0029.mp4的块信息
5. 其他命令
-
检查压缩库本地安装情况
hadoop checknative
-
格式化名称节点(慎用,一般只在初次搭建集群,使用一次;格式化成功后,不要再使用)
hadoop namenode -format
-
执行自定义jar包
hadoop jar MR-1.0-SNAPSHOT.jar com.zsc.hadoop.WordCount /world.txt /out