一.HDFS命令簡介:
HDFS命令和Linux系統操作命令有很多相似之處,後面主要講hadoop fs的常用命令
1. hadoop fs :適用於任何不同的文件系統,比如本地文件系統和HDFS文件系統
2. hadoop dfs:只能適用於HDFS文件系統
3. hdfs dfs:也只能適用於HDFS文件系統
二.hadoop fs 常用命令:
#.查看Hadoop的版本:
hadoop version
#.查看Hadoop命令的格式:
hadoop -help
hadoop fs -help
#.壓縮文件archive
hadoop archive -archiveName name.har -p < hdfs parent dir > < src >* < hdfs dst >
1. ls 顯示目錄文件
hadoop fs -ls hdfs://test 顯示目錄下所有文件和目錄
hadoop fs -ls -R hdfs://test 顯示目錄下所有文件
2. cat 查看文件內容
hadoop fs -cat hdfs://test/hello.txt
hadoop fs -tail hdfs://test/hello.txt 顯示文件末尾1KB的數據
3. mkdir 創建目錄
hadoop fs -mkdir hdfs://test 只能一級一級的建目錄,父目錄必須存在不然報錯
hadoop fs -mkdir -p hdfs://test1/test2 創建多級目錄
4. rm 刪除
hadoop fs -rm hdfs://test/hello.txt 刪除文件
hadoop fs -rm -r hdfs://test 刪除目錄
5. put 複製文件
hadoop fs -put /home/user/hello.txt hdfs://test
6. cp 複製系統內文件
hadoop fs -cp hdfs://test/hello.txt hdfs://test2/hello2.txt
hadoop fs -cp hdfs://test/hello.txt hdfs://test2
7. du 查看目錄文件大小(顯示test1目錄下所有文件大小)
hadoop fs -cp hdfs/test1
8. get 下載文件
hadoop fs -get hdfs://test/hello.txt 不寫本地存放路徑,默認下載到當前運行語句的路徑
hadoop fs -get hdfs://test/hello.txt /home/user
三.轉載總結:
https://blog.csdn.net/wuwenxiang91322/article/details/22166423
1,hadoop fs –fs [local | <file system URI>]:聲明hadoop使用的文件系統,如果不聲明的話,使用當前配置文件配置的,按如下順序查找:hadoop jar裏的hadoop-default.xml->$HADOOP_CONF_DIR下的hadoop-default.xml->$HADOOP_CONF_DIR下的hadoop-site.xml。使用local代表將本地文件系統作爲hadoop的DFS。如果傳遞uri做參數,那麼就是特定的文件系統作爲DFS。
2,hadoop fs –ls <path>:等同於本地系統的ls,列出在指定目錄下的文件內容,支持pattern匹配。輸出格式如filename(full path) <r n> size.其中n代表replica的個數,size代表大小(單位bytes)。
3,hadoop fs –lsr <path>:遞歸列出匹配pattern的文件信息,類似ls,只不過遞歸列出所有子目錄信息。
4,hadoop fs –du <path>:列出匹配pattern的指定的文件系統空間總量(單位bytes),等價於unix下的針對目錄的du –sb <path>/*和針對文件的du –b <path> ,輸出格式如name(full path) size(in bytes)。
5,hadoop fs –dus <path>:等價於-du,輸出格式也相同,只不過等價於unix的du -sb。
6,hadoop fs –mv <src> <dst>:將制定格式的文件 move到指定的目標位置。當src爲多個文件時,dst必須是個目錄。
7,hadoop fs –cp <src> <dst>:拷貝文件到目標位置,當src爲多個文件時,dst必須是個目錄。
8,hadoop fs –rm [-skipTrash] <src>:刪除匹配pattern的指定文件,等價於unix下的rm <src>。
9,hadoop fs –rmr [skipTrash] <src>:遞歸刪掉所有的文件和目錄,等價於unix下的rm –rf <src>。
10,hadoop fs –rmi [skipTrash] <src>:等價於unix的rm –rfi <src>。
11,hadoop fs –put <localsrc> … <dst>:從本地系統拷貝文件到DFS。
12,hadoop fs –copyFromLocal <localsrc> … <dst>:等價於-put。
13,hadoop fs –moveFromLocal <localsrc> … <dst>:等同於-put,只不過源文件在拷貝後被刪除。
14,hadoop fs –get [-ignoreCrc] [-crc] <src> <localdst>:從DFS拷貝文件到本地文件系統,文件匹配pattern,若是多個文件,則dst必須是目錄。
15,hadoop fs –getmerge <src> <localdst>:顧名思義,從DFS拷貝多個文件、合併排序爲一個文件到本地文件系統。
16,hadoop fs –cat <src>:展示文件內容。
17,hadoop fs –copyToLocal [-ignoreCrc] [-crc] <src> <localdst>:等價於-get。
18,hadoop fs –mkdir <path>:在指定位置創建目錄。
19,hadoop fs –setrep [-R] [-w] <rep> <path/file>:設置文件的備份級別,-R標誌控制是否遞歸設置子目錄及文件。
20,hadoop fs –chmod [-R] <MODE[,MODE]…|OCTALMODE> PATH…:修改文件的權限,-R標記遞歸修改。MODE爲a+r,g-w,+rwx等,OCTALMODE爲755這樣。
21,hadoop fs -chown [-R] [OWNER][:[GROUP]] PATH…:修改文件的所有者和組。-R表示遞歸。
22,hadoop fs -chgrp [-R] GROUP PATH…:等價於-chown … :GROUP …。
23,hadoop fs –count[-q] <path>:計數文件個數及所佔空間的詳情,輸出表格的列的含義依次爲:DIR_COUNT,FILE_COUNT,CONTENT_SIZE,FILE_NAME或者如果加了-q的話,還會列出QUOTA,REMAINING_QUOTA,SPACE_QUOTA,REMAINING_SPACE_QUOTA。