一、mkdir 創建文件夾
通過命令hadoop fs -mkdir /cyw在hdfs中創建名爲cyw的文件夾
二、moveFromLocal從本地剪切到hdfs中
這裏將本地/home/input/movefromlocal文件剪切到hdfs的cyw文件夾下
hadoop fs -moveFromLocal /home/input/movefromlocal /cyw
三、copyFromLocal從本地複製到hdfs中
這裏將本地/home/input/copyfromlocal.txt文件複製到hdfs的cyw文件夾下
hadoop fs -copyFromLocal /home/input/copyfromlocal.txt /cyw
四、put等同於拷貝copyFromLocal
hadoop fs -put /home/input/put.txt /cyw
五、appendToFile將本地文件追加到hdfs的另一個文件末尾
hadoop fs -appendToFile /home/input/words.txt /cyw/put.txt
下圖可以看到在put.txt中末尾增加了文本
六、copyToLocal將hdfs文件下載到本地
hadoop fs -copyToLocal /cyw/put.txt /home/down,下圖可以看到在/home/down目錄下存在put.txt文件
七、get等同於copyToLocal
hadoop fs -get /cyw/put.txt /home/down/getput.txt,下圖可以看到在/home/down目錄下存在getput.txt文件
八、hdfs直接操作
1.ls 顯示目錄信息
hadoop fs -ls /cyw,顯示/cyw目錄信息
2.cat顯示文本內容
hadoop fs -cat /cyw/put.txt,顯示/cyw/put.txt文本內容
3.chgrp、chmod、chown:Linux系統用法一樣。用來修改文件所屬權限。
這裏演示chown的用法,如上圖所示,/cyw/copyfromlocal.txt文件目前的Group爲supergroup,現在使用chown修改該文件的Group屬性。
執行 hadoop fs -chown root:root /cyw/copyfromlocal.txt命令後刷新頁面,可以在下圖看到copyfromlocal.txt的group改成了root。
再執行hadoop fs -chown root:supergroup /cyw/copyfromlocal.txt,將該文件group改成原來的supergroup。
4.cp拷貝,將原地址文件拷貝到目標地址
下圖可以看到,/input目錄下存在words.txt文件,/cyw目錄下不存在words.txt文件。
使用cp命令將/input/words.txt拷貝到/cyw目錄下
hadoop fs -cp /input/words.txt /cyw
5.mv移動 將文件剪切到指定目錄
如下圖在/input目錄下存在move.txt文件,現在需要將該文件移動到/cyw目錄下
執行命令:hadoop fs -mv /input/move.txt /cyw,可以看到在/cyw目錄下顯示了move.txt文件,而在/input目錄下move.txt文件不存在了。
6.tail命令顯示文件末尾數據,類似linux。
命令:hadoop fs -tail /cyw/put.txt,顯示/cyw目錄下的put.txt文件末尾內容。
7.rm刪除文件
這裏要刪除/input/put.txt文件,執行命令:hadoop fs -rm /input/put.txt
可以看到有提示Deleted /input/put.txt。
8.rm -r遞歸刪除目錄以及裏面的內容
接着上步繼續操作,這裏刪除/input目錄和裏面的內容,執行命令:hadoop fs -rm -r /input
9.du統計文件大小
統計/cyw目錄文件大小,執行命令:hadoop fs -du -s -h /cyw,從下圖可以看到/cyw下size累計後總共大小爲263B,副本只有一個,所以副本也是263B。
在上面命令的基礎上,去掉-s參數後則計算的是/cyw目錄下每個文件的大小。執行命令: hadoop fs -du -h /cyw
10.setrep設置文件副本個數
這裏設置/cyw目錄下words.txt副本數量爲2個,執行命令:hadoop fs -setrep 2 /cyw/words.txt。
這裏設置只是記錄在NameNode中,是否真的有這麼多副本還取決於DataNode。