目录
- 创建目录
- 查看目录下内容,包括文件名,权限,所有者,大小和修改时间
- 将本地文件或目录上传到HDFS中的路径
- 从本地复制文件到hdfs文件系统(与-put命令相似)
- 将文件或目录从HDFS中的路径拷贝到本地文件路径
- 复制hdfs文件系统中的文件到本地 (与-get命令相似)
- 显示文件内容到标准输出上。
- 从hdfs上过滤包含某个字符的行内容
- 在HDFS文件系统中,将文件或目录从HDFS的源路径移动到目标路径。不允许跨文件系统移动文件。
- 在HDFS文件系统中,将文件或目录复制到目标路径下
- 删除一个文件或目录
- 获取源文件并以文本格式输出文件。允许的格式为zip和TextRecordInputStream。
- 创建一个零长度的文件。
- 显示文件所占块数(%b),文件名(%n),块大小(%n),复制数(%r),修改时间(%y%Y)。
- 显示文件的最后1kb内容到标准输出
- 统计与指定文件模式匹配的路径下的目录,文件和字节数
- 显示给定目录中包含的文件和目录的大小或文件的长度,用字节大小表示,文件名用完整的HDFS协议前缀表示,以防它只是一个文件。
- 最后更多
之前在hive的删库、表和装载数据一文中提到了几个Linux系统下的hadoop命令,现在进行整合,记录几个常用命令。
首先:
hadoop fs:通用的文件系统命令,针对任何系统,比如本地文件、HDFS文件、HFTP文件等。
hdfs dfs:针对HDFS文件系统的操作。
创建目录
hadoop fs -mkdir [-p] < paths>
选项:-p
加-p可以创建多级目录。
查看目录下内容,包括文件名,权限,所有者,大小和修改时间
hadoop fs -ls [-R] < args>
选项:-R
递归地显示子目录下的内容
将本地文件或目录上传到HDFS中的路径
hadoop fs -put < /localdir> < /targetdir>
从本地复制文件到hdfs文件系统(与-put命令相似)
hadoop fs -copyFromLocal [-f] < /localsrc> < /targetdir>
选项:
如果目标已存在,则-f选项将覆盖目标。
将文件或目录从HDFS中的路径拷贝到本地文件路径
hadoop fs -get [-ignoreCrc] [-crc] < /hdfssrc> < /localdir>
选项:
-ignorecrc选项复制CRC校验失败的文件。
-crc选项复制文件和CRC。
复制hdfs文件系统中的文件到本地 (与-get命令相似)
hadoop fs -copyToLocal [-ignorecrc] [-crc] < /hdfssrc> < /targetdir>
显示文件内容到标准输出上。
hadoop fs -cat /dirs/file
从hdfs上过滤包含某个字符的行内容
hadoop fs -cat < srcpath> | grep 过滤字段
在HDFS文件系统中,将文件或目录从HDFS的源路径移动到目标路径。不允许跨文件系统移动文件。
hadoop fs -mv < /src> < /tar>
在HDFS文件系统中,将文件或目录复制到目标路径下
hadoop fs -cp [-f] [-p | -p [topax] /dirs/file1 /dirs/file2 (这个命令允许有多个源路径,此时目标路径必须是一个目录。)
选项:
-f选项覆盖已经存在的目标。
-p选项将保留文件属性[topx](时间戳,所有权,权限,ACL,XAttr)。如果指定了-p且没有arg,则保留时间戳,所有权和权限。如果指定了-pa,则还保留权限,因为ACL是一组超级权限。确定是否保留原始命名空间扩展属性与-p标志无关。
删除一个文件或目录
hadoop fs -rm [-f] [-r|-R] [-skipTrash] < /filepaths>
选项:
如果文件不存在,-f选项将不显示诊断消息或修改退出状态以反映错误。
-R选项以递归方式删除目录及其下的任何内容。
-r选项等效于-R。
-skipTrash选项将绕过垃圾桶(如果已启用),并立即删除指定的文件。当需要从超配额目录中删除文件时,这非常有用。
获取源文件并以文本格式输出文件。允许的格式为zip和TextRecordInputStream。
hadoop fs -text < /dirs/src>
创建一个零长度的文件。
hadoop fs -touchz /dirs/file
显示文件所占块数(%b),文件名(%n),块大小(%n),复制数(%r),修改时间(%y%Y)。
hadoop fs -stat /dir/file
显示文件的最后1kb内容到标准输出
hadoop fs -tail [-f] < /file>
选项:
-f选项将在文件增长时输出附加数据,如在Unix中一样。
统计与指定文件模式匹配的路径下的目录,文件和字节数
hadoop fs -count < /filepaths>
显示给定目录中包含的文件和目录的大小或文件的长度,用字节大小表示,文件名用完整的HDFS协议前缀表示,以防它只是一个文件。
hadoop fs -du [-s] [-h] < /dirpaths>
选项:
-s选项将显示文件长度的汇总摘要,而不是单个文件。
-h选项将以“人类可读”的方式格式化文件大小(例如64.0m而不是67108864)
最后更多
Usage: hadoop fs [generic options]
[-appendToFile <localsrc> ... <dst>]
[-cat [-ignoreCrc] <src> ...]
[-checksum <src> ...]
[-chgrp [-R] GROUP PATH...]
[-chmod [-R] <MODE[,MODE]... | OCTALMODE> PATH...]
[-chown [-R] [OWNER][:[GROUP]] PATH...]
[-copyFromLocal [-f] [-p] [-l] [-d] [-t <thread count>] <localsrc> ... <dst>]
[-copyToLocal [-f] [-p] [-ignoreCrc] [-crc] <src> ... <localdst>]
[-count [-q] [-h] [-v] [-t [<storage type>]] [-u] [-x] [-e] <path> ...]
[-cp [-f] [-p | -p[topax]] [-d] <src> ... <dst>]
[-createSnapshot <snapshotDir> [<snapshotName>]]
[-deleteSnapshot <snapshotDir> <snapshotName>]
[-df [-h] [<path> ...]]
[-du [-s] [-h] [-v] [-x] <path> ...]
[-expunge]
[-find <path> ... <expression> ...]
[-get [-f] [-p] [-ignoreCrc] [-crc] <src> ... <localdst>]
[-getfacl [-R] <path>]
[-getfattr [-R] {-n name | -d} [-e en] <path>]
[-getmerge [-nl] [-skip-empty-file] <src> <localdst>]
[-head <file>]
[-help [cmd ...]]
[-ls [-C] [-d] [-h] [-q] [-R] [-t] [-S] [-r] [-u] [-e] [<path> ...]]
[-mkdir [-p] <path> ...]
[-moveFromLocal <localsrc> ... <dst>]
[-moveToLocal <src> <localdst>]
[-mv <src> ... <dst>]
[-put [-f] [-p] [-l] [-d] <localsrc> ... <dst>]
[-renameSnapshot <snapshotDir> <oldName> <newName>]
[-rm [-f] [-r|-R] [-skipTrash] [-safely] <src> ...]
[-rmdir [--ignore-fail-on-non-empty] <dir> ...]
[-setfacl [-R] [{-b|-k} {-m|-x <acl_spec>} <path>]|[--set <acl_spec> <path>]]
[-setfattr {-n name [-v value] | -x name} <path>]
[-setrep [-R] [-w] <rep> <path> ...]
[-stat [format] <path> ...]
[-tail [-f] [-s <sleep interval>] <file>]
[-test -[defsz] <path>]
[-text [-ignoreCrc] <src> ...]
[-touch [-a] [-m] [-t TIMESTAMP ] [-c] <path> ...]
[-touchz <path> ...]
[-truncate [-w] <length> <path> ...]
[-usage [cmd ...]]