Hadoop shell命令

FS Shell

文件系统 (FS) shell 包括各种类似的命令直接与 Hadoop Distributed File System (HDFS)交互。
FS shell被下面调用:

bin/hadoop fs <args>

-appendToFile

用法: hadoop fs -appendToFile localsrc> … dst>
功能:添加本地单个或多个本地文件追加到文件系统目标文件。

  • hadoop fs -appendToFile localfile /user/hadoop/hadoopfile
    -hadoop fs -appendToFile localfile1 localfile2 /user/hadoop/hadoopfile

-cat

用法: hadoop fs -cat [URI…]
功能:将路径指定文件的内容输出到stdout(终端)

  • hadoop fs -cat hdfs://nn1.example.com/file1 hdfs://nn2.example.com/file2
  • hadoop fs -cat file:///file3 /user/hadoop/file4

-chgrp

用法: hadoop fs -chgrp [-R] GROUP URI [URI …]
功能:改变文件所属的组,使用-R将使改变在目录结构下递归进行。命令的使用者必须是文件的所有者或者超级用户。

  • hadoop fs -chgrp [-R] group URI
  • hadoop fs -chgrp -R hadoop /flume

-chmod

用法:hadoop fs -chmod [-R] <MODE[,MODE]… | OCTALMODE> URI [URI …]
功能:改变文件的权限,使用-R将使改变在目录结构下递归进行。命令的使用者必须是文件的所有者或者超级用户。

  • hadoop fs -chmod -R 777 /flume

-chown

用法:hadoop fs -chown [-R] [OWNER] [ :[GROUP]] URI
功能:更改文件的所有者. 使用-R 将使改变在目录结构下递归进行。 必须是文件所有者或则超级用户。

  • hadoop fs -chown -R hadoop_mapreduce:hadoop /flume

-copyFromLocal

用法:hadoop fs -copyFromLocal localsrc> URI(localRemote)
功能:和put命令的用法类似,除了源文件只能是本地,从linux文件系统或者其他文件系统拷贝文件至hdfs文件系统。

  • hadoop fs -copyFromLocal /usr/huawei/app /flume/app

-copyToLocal

用法:hadoop fs -copyToLocal [-ignorecrc] [-crc] URI
功能:和get方法相似,除了目标文件仅限于本地文件,将hdfs文件系统的文件拷贝至linux文件系统或者其他文件系统。

  • hadoop fs -copyToLocal ignorecrc -crc /flume/app /usr/huawei/app

-count

用法:hadoop fs -count paths>
功能:输出列:DIR_COUNT, FILE_COUNT, CONTENT_SIZE, PATHNAME
[目录个数,文件个数,总大小,路径名称]
用法:hadoop fs -count [-q] [-h] [-v] paths>
功能:-q --> QUOTA, REMAINING_QUATA, SPACE_QUOTA, REMAINING_SPACE_QUOTA, DIR_COUNT, FILE_COUNT, CONTENT_SIZE, PATHNAME
[配置,其余指标,空间配额,剩余空间定额,目录个数,文件个数,总大小,路径名称]
-h --> size可读模式。
-v --> 显示一个标题行。

-cp

用法:hadoop fs -cp [-f] [-p | URI [URI …] dest>
-f 选项如果文件已经存在将会被重写。
-p 选项保存文件属性。
功能:将文件从源路径复制到目标路径,允许多个源路径,目标路径只能有一个。

  • hadoop fs -cp /user/hadoop/file1 /user/hadoop/file2
  • hadoop fs -cp /user/hadoop/file1 /user/hadoop/file2 /user/hadoop/dir

-du

用法: hadoop fs -du [-s] [-h] URI [URI …]
-s 选项汇总文件的长度,而不是现实单个文件。
-h 选项显示格式更加易读。
功能:显示目录中所有文件的大小,或者当只指定一个文件时,显示此文件的大小。如果指定一个目录,则显示出该目录下所有文件/文件夹的大小。

  • hadoop fs -du /flume/app /flume/web

-dus

用法:hadoop fs -dus args>
功能:显示统计文件长度。

  • hadoop fs -dus /flume/app

-expunge

用法:hadoop fs -expunge
功能:清空回收站。

-get

用法:hadoop fs -get [-ignorecrc] [-crc] src> localdst>
功能:复制文件到本地文件系统。可用-ignorecrc选项复制CRC校验失败的文件。使用-crc选项复制文件以及CRC信息。

  • hadoop fs -get /user/hadoop/file localfile
  • hadoop fs -get hdfs://host:port/user/hadoop/file localfile

-getfacl

用法:hadoop fs -getfacl [-R] path>
功能:显示文件和目录的访问控制列表(acl)。

  • hadop fs -getfacl -R /flume

-getmerge

用法:hadoop fs -getmerge src> localdst> [addnl]
功能:接受一个源目录和一个目标文件作为输入,并且将源目录中所有的文件连接成本地目标文件。addnl是可选的,用于指定在每个文件结尾添加一个换行符。

  • hadoop fs -getmerge /flume/app /usr/huawei/app

-ls -lsr

用法:hadoop fs -ls / -lsr args> -lsr是-ls查询目录的递归版
功能:如果是文件,则按照如下格式返回文件信息:
文件名 <副本数> 文件大小 修改日期 修改时间 权限 用户ID 组ID
如果是目录,则返回它直接子文件的一个列表,就像在Unix中一样。目录返回列表的信息如下:目录名 dir> 修改日期 修改时间 权限 用户ID 组ID

  • hadoop fs -ls /user/hadoop

-mkdir

用法:hadoop fs -mkdir paths>
功能:接受路径指定的uri作为参数,创建这些目录。其行为类似于Unix的mkdir -p,它会创建路径中的各级父目录。

  • hadoop fs -mkdir /user/hadoop/dir1 /user/hadoop/dir2

-movefromLocal

用法:hadoop fs -moveFromLocal src> dst>
功能:和put方法类似,从本地移动文件到hdfs。

  • hadoop fs -moveFromLocal /usr/local/* /user/flume/

-moveToLocal

用法:hadoop fs -moveToLocal [-crc] src> dst>
功能:将hdfs文件移动到本地文件系统。

  • hadoop fs -moveToLocal -crc /user/hadoop_hdfs/* /usr/local/

-mv

用法:hadoop fs -mv URI [URI …] dest>
功能:将文件从源路径移动到目标路径。这个命令允许有多个源路径,此时目标路径必须是一个目录。不允许在不同的文件系统间移动文件。

  • hadoop fs -mv /user/flume /user/hadoop

-put

用法:hadoop fs -put localsrc> … dst>
功能:从本地文件系统中复制单个或多个源路径到目标文件系统。也支持从标准输入中读取输入写入目标文件系统。

  • hadoop fs -put localfile hdfs://host:port/hadoop/hadoopfile

-rm

用法:hadoop fs -rm URI [URI …]
功能:删除指定的文件。只删除空目录和文件。

  • hadoop fs -rm hdfs://host:port/file /user/hadoop/emptydir

-rmr

用法:hadoop fs -rmr URI [URI …]
功能:-rm的递归版

  • hadoop fs -rmr /user/hadoop/dir

-setrep

用法:hadoop fs -setrep [-R] [-w] numReplicas> path>
功能:改变一个文件的副本系数。-R选项用于递归改变目录下所有文件的副本系数。

  • hadoop fs -setrep -R -w 3 /user/flume

-stat

用法:hadoop fs -stat URI [URI …]
功能:返回指定路径的统计信息。

  • hadoop fs -stat/flume

-tail

用法:hadoop fs -tail [-f] URI
功能:将文件尾部1K字节的内容输出到stdout。支持-f选项,行为和Unix中一致。

  • hadoop fs -tail /flume

-test

用法:hadoop fs -test -e -z -d URI
功能:测试检查目录或者文件是否存在。

  • -e 检查文件是否存在。如果存在则返回0。
  • -z 检查文件是否是0字节。如果是则返回0。
  • -d 如果路径是个目录,则返回1,否则返回0。

-text

用法:hadoop fs -text src>
功能:源文件和输出文件为文本格式。允许的格式是zip和TextRecordInputStream。

-touchz

用法:hadoop fs -touchz URI [URI …]
功能:创建一个0字节的空文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值