@changedi
2016-05-03T12:20:42.000000Z
字数 7647
阅读 5756
大数据
Hadoop
原文:http://hadoop.apache.org/docs/r2.6.4/hadoop-project-dist/hadoop-common/FileSystemShell.html
文件系统(FS)shell包括了各种各样的类shell命令,这些命令可以与HDFS交互,也可以和其他HDFS支持的文件系统(本地FS,HFTP,S3以及其他)。启动shell方式如下:
bin/hadoop fs <args>
所有的FS shell命令将路径URI当做参数。URI格式形如 scheme://authority/path。对于HDFS来说,scheme就是hdfs,对于本地文件系统来说就是file。scheme和authority是可选的。如果不声明的话,默认scheme在配置文件中声明。一个HDFS文件或目录比如/parent/child被声明为hdfs://namenodehost/parent/child 或者简单的像/parent/child (前提是你的配置指向hdfs://namenodehost)。
大多数FS shell的命令表现的和Unix系统的命令一样。不同之处都在下面描述清楚了。错误信息被发送到标准错误stderr,普通输出信息被发送到标准输出stdout。
Usage: hdfs dfs -appendToFile <localsrc> ... <dst>
从本地文件系统添加一个单一的src或者多个srcs到目标文件系统。同时也可以把标准stdin的数据读入添加到目标文件系统。
Exit的Code:
成功返回0,错误返回1。
Usage: hdfs dfs -cat URI [URI ...]
拷贝原路径的内容到标准输出stdout。
示例:
Exit的Code:
成功返回0,错误返回-1。
Usage: hdfs dfs -chgrp [-R] GROUP URI [URI ...]
改变组合文件的关联。用户必须是文件的owner或者是超级用户。额外信息参见 Permissions Guide。
Options
Usage: hdfs dfs -chmod [-R] <MODE[,MODE]... | OCTALMODE> URI [URI ...]
改变文件的权限。-R选项可以递归遍历目录结构。用户必须是文件的owner或者超级用户。额外信息参考Permissions Guide。
Options
Usage: hdfs dfs -chown [-R] [OWNER][:[GROUP]] URI [URI ]
改变文件的owner。用户必须是文件的owner或者超级用户。额外信息参考Permissions Guide。
Options
Usage: hdfs dfs -copyFromLocal <localsrc> URI
与put命令类似,不同之处在于本命令局限于本地文件的引用。
Options:
Usage: hdfs dfs -copyToLocal [-ignorecrc] [-crc] URI <localdst>
与get命令类似,不同之处在于本命令局限于本地文件的引用。
Usage: hdfs dfs -count [-q] [-h] <paths>
计数目录、文件和字节数,路径匹配指定的路径pattern。输出的列包括:DIR_COUNT, FILE_COUNT, CONTENT_SIZE FILE_NAME
带有-q参数时的输出列为:QUOTA, REMAINING_QUATA, SPACE_QUOTA, REMAINING_SPACE_QUOTA, DIR_COUNT, FILE_COUNT, CONTENT_SIZE, FILE_NAME
-h选项展示人类可读的格式。
示例:
Exit的 Code:
成功返回0,错误返回-1。
Usage: hdfs dfs -cp [-f] [-p | -p[topax]] URI [URI ...] <dest>
从源将文件拷贝到目标。该命令允许拷贝多个源,前提是目标是一个目录。
'raw.*'命名空间扩展属性是被预留的,满足(1)源和目标文件系统支持(HDFS only),(2)所有的源和目标路径名称在/.reserved/raw层级下。决定raw.*命名空间扩展属性是否被预留与-p标记无关。
Options:
示例:
Exit Code:
成功返回0,错误返回-1。
Usage: hdfs dfs -du [-s] [-h] URI [URI ...]
显示给定目录下的文件和目录的大小。
Options:
Example:
Exit Code: 成功返回0,错误返回-1。
Usage: hdfs dfs -dus <args>
展示文件长度的汇总。
注意:该命令已经deprecated。用hdfs dfs -du -s
替换。
Usage: hdfs dfs -expunge
清空回收站。更多关于Trash特性的信息,参考HDFS Architecture Guide。
Usage: hdfs dfs -get [-ignorecrc] [-crc] <src> <localdst>
拷贝文件到本地文件系统。如果在CRC校检失败的文件可以加-ignorecrc选项。使用-crc选项,文件和CRC都可以被拷贝。
示例:
Exit Code:
成功返回0,错误返回-1。
Usage: hdfs dfs -getfacl [-R] <path>
显示文件和目录的访问控制列表。如果一个目录有默认的ACL,那么getfacl也会显示默认的ACL。
Options:
-R: 递归列出所有文件和目录的ACL。
path: 要列出文件和目录的路径。
示例:
Exit Code:
成功返回0,错误返回非0。
Usage: hdfs dfs -getfattr [-R] -n name | -d [-e en] <path>
展示一个文件或者目录的扩展属性名称和值。
Options:
示例:
Exit Code:
成功返回0,错误返回非0。
Usage: hdfs dfs -getmerge <src> <localdst> [addnl]
以一个源目录和一个目标文件作为输入,将源目录下的文件拼接起来填到目标本地文件里。addnl用来在每个文件后添加一个新的行。
Usage: hdfs dfs -ls [-R] <args>
Options:
对于文件,返回的统计信息格式如下:
permissions number_of_replicas userid groupid filesize modification_date modification_time filename
对于目录,返回目录下的直接子文件(目录)。格式如下:
permissions userid groupid modification_date modification_time dirname
示例:
hdfs dfs -ls /user/hadoop/file1
Exit Code:
成功返回0,错误返回-1。
Usage: hdfs dfs -lsr <args>
ls命令的递归版本。
注意:这个命令已经deprecated。用hdfs dfs -ls -R来替换。
Usage: hdfs dfs -mkdir [-p] <paths>
以路径的uri作为参数创建目录。
Options:
示例:
Exit Code:
成功返回0,错误返回-1。
Usage: hdfs dfs -moveFromLocal <localsrc> <dst>
和put命令类似,不同之处在于localsrc在拷贝结束后会被删除。
Usage: hdfs dfs -moveToLocal [-crc] <src> <dst>
显示一个"Not implemented yet"的消息。
Usage: hdfs dfs -mv URI [URI ...] <dest>
把文件从源地址移动到目的地址。这个命令允许多个原地址,在此情况下目的地址要是一个目录。跨文件系统的move是禁止的。
示例:
Exit Code:
成功返回0,错误返回-1。
Usage: hdfs dfs -put <localsrc> ... <dst>
从本地文件系统拷贝文件到目标文件系统。也可以从标准输入stdin读入数据并写到目标文件系统。
Exit Code:
成功返回0,错误返回-1。
Usage: hdfs dfs -rm [-f] [-r|-R] [-skipTrash] URI [URI ...]
删除文件。
Options:
示例:
Exit Code:
成功返回0,错误返回-1。
Usage: hdfs dfs -rmr [-skipTrash] URI [URI ...]
delete的递归版本。
注意:该命令已经 deprecated。用hdfs dfs -rm -r替换。
Usage: hdfs dfs -setfacl [-R] [-b|-k -m|-x <acl_spec> <path>]|[--set <acl_spec> <path>]
设置文件和目录的ACL。
Options:
示例:
Exit Code:
成功返回0,错误返回非0。
Usage: hdfs dfs -setfattr -n name [-v value] | -x name <path>
设置文件或目录的扩展属性名称和值。
Options:
示例:
Exit Code:
成功返回0,错误返回非0。
Usage: hdfs dfs -setrep [-R] [-w] <numReplicas> <path>
修改文件的复制属性因子。如果路径是一个目录,那么该命令递归修改所有目录下的子文件。
Options:
示例:
Exit Code:
成功返回0,错误返回-1。
Usage: hdfs dfs -stat URI [URI ...]
返回路径的统计信息。
示例:
Exit Code: 成功返回0,错误返回-1。
Usage: hdfs dfs -tail [-f] URI
显示文件的末尾的信息到标准输出stdout。
Options:
示例:
Exit Code: 成功返回0,错误返回-1。
Usage: hdfs dfs -test -[ezd] URI
Options:
示例:
Usage: hdfs dfs -text <src>
取一个源文件并以text格式输出。允许的格式是zip和TextRecordInputStream。
Usage: hdfs dfs -touchz URI [URI ...]
创建一个空文件。
示例:
Exit Code: 成功返回0,错误返回-1。