Hadoop——HDF的Shell命令

1、创建目录与文件

mkdir创建文件夹:hdfs fs -mkdir [-p] < paths >
touchz新建文件:hdfs fs -touchz URI [URI …]

接受路径指定的uri作为参数,创建这些目录。其行为类似于Unix的mkdir -p,它会创建路径中的各级父目录。

命令 解释 例子
hdfs fs -mkdir(paths) 在分布式主目录下新建文件夹 hdfs dfs -mkdir /test
hdfs fs -touchz URI [URI …] 在/test/下新建文件file1 hdfs dfs -touchz /test/file1

2、显示目录与文件名

使用方法:hdfs dfs -ls [-d][-h][-R] < paths >

命令 解释 例子
hdfs dfs -ls 列出目录下的所有文件和目录信息 hdfs dfs -ls /test
hdfs dfs -ls -d 列出/test目录信息 hdfs dfs -mkdir /test
hdfs dfs -ls -h 列出目录和文件的大小 hdfs dfs -ls -h /test
hdfs dfs -ls -R 循环列出目录、子目录及文件信息 hdfs dfs -ls -R /test

3、rm删除目录和文件

使用方法:hdfs dfs -rm [-f] [-r|-R] < paths >

命令 解释 例子
hdfs dfs -rm 删除文件 hdfs dfs -rm /test/dir0/file1
hdfs dfs -rm -r 级联删除目录下的所有文件和子目录文件 hdfs dfs -rm -r /test/dir0

4、put/get上传/下载

使用方法↓
hdfs dfs -put [-f] [-p] < localsrc > … < dst >
hdfs dfs -get [-p] [-ignoreCrc] [-crc] < src > … < localdst >

put将本地文件系统的复制到HDFS文件系统的目录下
get 将HDFS中的文件复制到本地文件系统中,与-put命令相反

命令 解释 例子
hdfs dfs -put / hdfs dfs -put /test/test.txt
hdfs dfs -put -f -f 如果文件在分布式文件系统上已经存在,则覆盖存储,若不加则会报错 hdfs dfs -put -f /home/hadoop/hfile /test/hfile
hdfs dfs -put -p -p 保持源文件的属性(组、拥有者、创建时间、权限等)把本地新建的文件放到分布式文件系统主目录下,保持源文件属性 hdfs dfs -put -p /home/hadoop/file /test/
hdfs dfs -get 把分布式文件系统目录下的文件复制到本地 hdfs dfs -get /test/hfile /home/hadoop/hfile

5、cat、text、tail查看文件内容

使用方法↓
hdfs dfs -cat/text [-ignoreCrc] < src >
Hdfs dfs -tail [-f] < file >

其中,-ignoreCrc 忽循环检验失败的文件;-f 动态更新显示数据,如查看某个不断增长的文件的日志文件。

3个命令都是在命令行窗口查看指定文件内容。区别是 text 不仅可以查看文本文件,还可以查看压缩文件和Avro序列化的文件,其他两个不可以;tail 查看的是最后1KB的文件(Linux上的tail默认查看最后10行记录)。

命令 解释 例子
hdfs dfs -cat 查看文件的内容 hdfs dfs -cat /test/file
hdfs dfs -text 查看文件的内容 hdfs dfs -text /test/file
hdfs dfs -tail 查看文件的内容 hdfs dfs -tail /test/file

5、appendToFile追写文件

使用方法: hdfs dfs -du [-s] [-h] < path > …

默认按字节显示指定目录所占空间大小。其中,-s显示指定目录下文件总大小;-h按照KMG数据大小单位显示文件大小,如果没有单位,默认为B。

命令 解释 例子
hdfs dfs -appendToFile 把本地文件系统文件追加到分布式文件系统中 hdfs dfs -appendToFile /home/hadoop/file2 /test/file2

6、du显示占用磁盘空间大小

使用方法: hdfs dfs -du [-s] [-h] < path > …

默认按字节显示指定目录所占空间大小。其中,-s显示指定目录下文件总大小;-h按照KMG数据大小单位显示文件大小,如果没有单位,默认为B。

命令 解释 例子
hdfs dfs -du 显示分布式主目录下文件和目录大小 hdfs dfs -du /test/
hdfs dfs -du -h 显示分布式主目录下文件和目录大小 hdfs dfs -du -h /test/
hdfs dfs -du -s 显示分布式主目录下文件和目录大小 hdfs dfs -du -s /test/

7、cp复制文件

将文件从SRC复制到DST,如果指定了多个SRC,则DST必须为一个目录
使用方法:hdfs fs –cp SRC [SRC …] DST

命令 例子 解释
hdfs dfs -cp hdfs dfs -cp /test/file2 /test/dir0 从/test复制file2文件至/test/dir0目录下
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>