一、Hadoop的hdfs dfs命令
| 參數 | 作用 | 示例 | 返回值 |
| appendToFile | 將一個或者多個本地 文件追加到目的文件 |
hdfs dfs -appendToFile localfile /user/hadoop/hadoopfile |
Returns 0 on success and 1 on error |
| cat | 輸出文件 | hdfs dfs -cat file:///file3 /user/hadoop/file4 | Returns 0 on success and -1 on error |
| chgrp | 改變文件的分組 | hdfs dfs -chgrp [-R] GROUP URI [URI ...] | |
| chmod | 改變文件的權限 | hdfs dfs -chmod [-R] <MODE[,MODE]... | OCTALMODE> URI [URI ...] |
|
| chown | 改變文件的擁有者 | hdfs dfs -chown [-R] [OWNER][:[GROUP]] URI [URI ] | |
| copyFromLocal | 從本地復制 | ||
| copyToLocal | 復制到本地 | ||
| count | 得到文件/目錄等數目 追加參數-q, -h有不同的意義 |
hdfs dfs -count -q hdfs://nn1.example.com/file1 | Returns 0 on success and -1 on error |
| cp | 復制,參數-f,-p | hdfs dfs -cp /user/hadoop/file1 /user/hadoop/file2 | Returns 0 on success and -1 on error |
| du | 得到指定文件的大小 | hdfs dfs -du /test/hadoop | Returns 0 on success and -1 on error. |
| dus | 已摒棄,和du類似 | ||
| expunge | 清空回收站 | hdfs dfs -expunge | |
| get | 復制文件到本地路徑下 | hdfs dfs -get /user/hadoop/file localfile | Returns 0 on success and -1 on error |
| getfacl | 顯示文件或者目錄的 權限控制列表 |
hdfs dfs -getfacl /file hdfs dfs -getfacl -R /dir |
Returns 0 on success and non-zero on error |
| getfattr | 顯示文件或者目錄的擴展屬性 | hdfs dfs -getfattr -d /file | Returns 0 on success and non-zero on error |
| getmerge | 合並多個文件一個目標文件里 | hdfs dfs -getmerge <src> <localdst> [addnl] | |
| ls | 和linux里一樣 | hdfs dfs -ls /user/hadoop/file1 | Returns 0 on success and -1 on error |
| lsr | 等同於ls -R | ||
| mkdir | 創建目錄,-p創建多層目錄 | hdfs dfs -mkdir /user/hadoop/dir1 /user/hadoop/dir2 | Returns 0 on success and -1 on error |
| moveFromLocal | 類似put,區別在於put完后刪除 原文件 |
||
| moveToLocal | 目前沒有實現 | ||
| mv | 移動文件 | hdfs dfs -mv /user/hadoop/file1 /user/hadoop/file2 | Returns 0 on success and -1 on error |
| put | 像目標目錄推送文件 | hdfs dfs -put localfile /user/hadoop/hadoopfile | Returns 0 on success and -1 on error |
| rm | 刪除文件 | hdfs dfs -rm hdfs://nn.example.com/file / user/hadoop/emptydir |
Returns 0 on success and -1 on error |
| rmr | 類似於rm -r | ||
| setfacl | 設置文件或者目錄的 權限控制列表 |
hdfs dfs -setfacl -m user:hadoop:rw- /file | Returns 0 on success and non-zero on error |
| setfattr | 設置文件或者目錄的擴展屬性 | hdfs dfs -setfattr -n user.myAttr -v myValue /file | Returns 0 on success and non-zero on error |
| setrep | 改變文件和目錄的復制因子 | hdfs dfs -setrep -w 3 /user/hadoop/dir1 | Returns 0 on success and -1 on error |
| stat | 返回路徑信息 | hdfs dfs -stat path | Exit Code: Returns 0 on success and -1 on error |
| tail | 輸出文件的最后1千字節 | hdfs dfs -tail pathname | Returns 0 on success and -1 on error |
| test | 檢查文件 | hdfs dfs -test -e filename | |
| text | 以文本方式輸出文件 | hdfs dfs -text <src> | |
| touchz | 創建空文件 | hdfs dfs -touchz pathname | Returns 0 on success and -1 on error |
二、Hadoop的hdfs dfsadmin命令
1)文件/文件夾/空間大小限制命令
hdfs dfsadmin -setQuota 10 lisi 限制lisi目錄只能有10個文件或者文件夾
hdfs dfsadmin -clrQuota lisi 清除lisi目錄下的文件或者文件夾個數限制
hdfs dfsadmin -setSpaceQuota 4k /lisi/ 設置lisi目錄的空間大小
hdfs dfsadmin -clrSpaceQuota /lisi/ 清除lisi目錄下的空間大小限制
hdfs dfs -count -q -h /lisi 查看lisi目錄的文件夾或文件個數、空間大小限制情況
2)安全模式
hdfs dfsadmin -safemode get 獲取安全模式開啟狀態
hdfs dfsadmin -safemode enter 進入安全模式
hdfs dfsadmin -safemode leave 退出安全模式
hdfs dfsadmin -safemode 等待安全模式結束
#hadoop fs -ls / 查看HDFS根目錄
#hadoop fs -mkdir /test 在根目錄創建一個目錄test
#hadoop fs -mkdir /test1 在根目錄創建一個目錄test1
#echo -e 'hadoop second lesson' >test.txt
#hadoop fs -put ./test.txt /test
或#hadoop fs -copyFromLocal ./test.txt /test
#cd ..
#hadoop fs -get /test/test.txt .
或#hadoop fs -getToLocal /test/test.txt .
#hadoop fs -cp /test/test.txt /test1
#hadoop fs -rm /test1/test.txt
#hadoop fs -mv /test/test.txt /test1
#hadoop fs -rmr /test1
#hadoop fs -appendToFile
