您好,登錄后才能下訂單哦!
HDFS有哪些基本操作?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
1、Shell命令行客戶端
Hadoop 提供了文件系統的shell命令行客戶端,使用方法如下:
hadoop fs <args>
文件系統 shell 包括與 Hadoop 分布式文件系統(HDFS)以及 Hadoop 支持的其他文件系統(如本地 FS,HFTP FS,S3 FS 等)直接交互的各種類似 shell 的命令。所有 FS shell 命令都將路徑 URI 作為參數。
URI 格式為 scheme://authority/path。對于 HDFS,該 scheme 是 hdfs,對于本地 FS,該 scheme 是 file。scheme 和 authority 是可選的。如果未指定, 則使用配置中指定的默認方案。
對于 HDFS,命令示例如下:
hadoop fs -ls hdfs://namenode:host/parent/child hadoop fs -ls /parent/child fs.defaultFS 中有配置對于本地文件系統,命令示例如下:
hadoop fs -ls file:///root/
如果使用的文件系統是 HDFS,則使用 hdfs dfs 也是可以的,此時
hadoop fs <args> = hdfs dfs <args>
2、Shell命令選項
選項名稱 | 使用格式 | 含義 |
-ls | -ls <路徑> | 查看指定路徑的當前目錄結構 |
-lsr | -lsr <路徑> | 遞歸查看指定路徑的目錄結構 |
-du | -du <路徑> | 統計目錄下個文件大小 |
-dus | -dus <路徑> | 匯總統計目錄下文件(夾)大小 |
-count | -count [-q] <路徑> | 統計文件(夾)數量 |
-mv | -mv <源路徑> <目的路徑> | 移動 |
-cp | -cp <源路徑> <目的路徑> | 復制 |
-rm | -rm [-skipTrash] <路徑> | 刪除文件/空白文件夾 |
-rmr | -rmr [-skipTrash] <路徑> | 遞歸刪除 |
-put | -put <多個 linux 上的文件> <hdfs 路徑> | 上傳文件 |
-copyFromLocal | -copyFromLocal <多個 linux 上的文件> <hdfs 路徑> | 從本地復制 |
-moveFromLocal | -moveFromLocal <多個 linux 上的文件> <hdfs 路徑> | 從本地移動 |
-getmerge | -getmerge <源路徑> <linux 路徑> | 合并到本地 |
-cat | -cat <hdfs 路徑> | 查看文件內容 |
-text | -text <hdfs 路徑> | 查看文件內容 |
-copyToLocal | -copyToLocal [-ignoreCrc] [-crc] [hdfs 源路徑] [linux 目的路徑] | 從本地復制 |
-moveToLocal | -moveToLocal [-crc] <hdfs 源路徑> <li nux 目的路徑> | 從本地移動 |
-mkdir | -mkdir <hdfs 路徑> | 創建空白文件夾 |
-setrep | -setrep [-R] [-w] <副本數> <路徑> | 修改副本數量 |
-touchz | -touchz <文件路徑> | 創建空白文件 |
-stat | -stat [format] <路徑> | 顯示文件統計信息 |
-tail | -tail [-f] <文件> | 查看文件尾部信息 |
-chmod | -chmod [-R] <權限模式> [路徑] | 修改權限 |
-chown | -chown [-R] [屬主][:[屬組]] 路徑 | 修改屬主 |
-chgrp | -chgrp [-R] 屬組名稱 路徑 | 修改屬組 |
-help | -help [命令選項] | 幫助 |
3、Shell 常用命令介紹
(1)ls
使用方法:hadoop fs -ls [-h] [-R] <args>
功能:顯示文件、目錄信息。
示例:hadoop fs -ls /user/hadoop/file1
(2)mkdir
使用方法:hadoop fs -mkdir [-p] <paths>
功能:在 hdfs 上創建目錄,-p 表示會創建路徑中的各級父目錄。
示例:hadoop fs -mkdir –p /user/hadoop/dir1
(3)put
使用方法:hadoop fs -put [-f] [-p] [ -|<localsrc1> .. ]. <dst>
功能:將單個 src 或多個 srcs 從本地文件系統復制到目標文件系統。
-p:保留訪問和修改時間,所有權和權限。
-f:覆蓋目的地(如果已經存在)。
示例:hadoop fs -put -f localfile1 localfile2 /user/hadoop/hadoopdir
(4)get
使用方法:hadoop fs -get [-ignorecrc] [-crc] [-p] [-f] <src> <localdst>
-ignorecrc:跳過對下載文件的 CRC 檢查。
-crc:為下載的文件寫 CRC 校驗和。功能:將文件復制到本地文件系統。
示例:hadoop fs -get hdfs://host:port/user/hadoop/file localfile
(5)appendToFile
使用方法:hadoop fs -appendToFile <localsrc> ... <dst>
功能:追加一個文件到已經存在的文件末尾。
示例:hadoop fs -appendToFile localfile /hadoop/hadoopfile
(6)cat
使用方法:hadoop fs -cat [-ignoreCrc] URI [URI ...]
功能:顯示文件內容到 stdout 。
示例:hadoop fs -cat /hadoop/hadoopfile
(7)tail
使用方法:hadoop fs -tail [-f] URI
功能:將文件的最后一千字節內容顯示到 stdout。
-f 選項將在文件增長時輸出附加數據。
示例:hadoop fs -tail /hadoop/hadoopfile
(8)chgrp
使用方法:hadoop fs -chgrp [-R] GROUP URI [URI ...]
功能:更改文件組的關聯。用戶必須是文件的所有者,否則是超級用戶。
-R 將使改變在目錄結構下遞歸進行。
示例:hadoop fs -chgrp othergroup /hadoop/hadoopfile
(9)chmod
功能:改變文件的權限。使用-R 將使改變在目錄結構下遞歸進行。
示例:hadoop fs -chmod 666 /hadoop/hadoopfile
(10)chown
功能:改變文件的擁有者。使用-R 將使改變在目錄結構下遞歸進行。
示例 :hadoop fs -chown someuser:somegrp /hadoop/hadoopfile
(11)copyFromLocal
使用方法:hadoop fs -copyFromLocal <localsrc> URI 。
功能:從本地文件系統中拷貝文件到 hdfs 路徑去 。
示例:hadoop fs -copyFromLocal /root/1.txt /
(12)copyToLocal
功能:從 hdfs 拷貝到本地 。
示例:hadoop fs -copyToLocal /aaa/jdk.tar.gz
(13)cp
功能:從 hdfs 的一個路徑拷貝 hdfs 的另一個路徑。
示例:hadoop fs -cp /aaa/jdk.tar.gz /bbb/jdk.tar.gz.2
(14)mv
功能:在 hdfs 目錄中移動文件。
示例:hadoop fs -mv /aaa/jdk.tar.gz /
(15)getmerge
功能:合并下載多個文件。
示例:比如hdfs 的目錄/aaa/下有多個文件:log.1, log.2,log.3,... hadoop fs -getmerge /aaa/log.* ./log.sum
(16)rm
功能:刪除指定的文件。只刪除非空目錄和文件。-r 遞歸刪除。
示例:hadoop fs -rm -r /aaa/bbb/
(17)df
功能:統計文件系統的可用空間信息。
示例:hadoop fs -df -h /
(18)du
功能:顯示目錄中所有文件大小,當只指定一個文件時,顯示此文件的大小。
示例:hadoop fs -du /user/hadoop/dir1
(19)setrep
功能:改變一個文件的副本系數。-R 選項用于遞歸改變目錄下所有文件的副本系數。
示例:hadoop fs -setrep -w 3 -R /user/hadoop/dir1
關于HDFS有哪些基本操作問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。