指令目录

  • 1、创建目录与文件
  • 2、显示目录与文件名
  • 3、rm删除目录和文件
  • 4、put/get上传/下载
  • 5、cat、text、tail查看文件内容
  • 5、appendToFile追写文件
  • 6、du显示占用磁盘空间大小
  • 7、cp复制文件


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目录下