Hadoop hdfs 常用命令
概述
前言
呼叫檔案系統(FS)Shell命令應使用 bin/hadoop fs 的形式。但也可以用hadoop dfs ,兩者效果一樣。(hadoop dfs命令已不再建議使用)
常用命令
-help
功能:輸出這個命令引數手冊
-ls
功能:顯示目錄資訊 示例: hadoop fs -ls hdfs://server:9000/ 備註:這些引數中,所有的hdfs路徑都可以簡寫 ----->hadoop fs -ls / 等同於上一條命令的效果
-lsr
功能:ls命令的遞迴版本。類似於Unix中的ls -R 示例:hadoop fs -lsr /
-mkdir
功能:在hdfs上建立目錄 示例:hadoop fs -mkdir /a/b
-cat
功能:顯示檔案內容 示例:hadoop fs -cat /a/a.txt
-tail
功能:顯示一個檔案的末尾 示例:hadoop fs -tail /a/a.txt
-text
功能:以字元形式列印一個檔案的內容 示例:hadoop fs -text /a/a.txt
-chgrp
-chmod
-chown
功能:linux檔案系統中的用法一樣,對檔案所屬許可權 示例: hadoop fs -chmod 777 /a/a.txt hadoop fs -chown user:grp /a/a.txt
-copyFromLocal
功能:從本地檔案系統中拷貝檔案到hdfs路徑去 示例:hadoop fs -copyFromLocal ./jdk.tar.gz /a/
-copyToLocal
功能:從hdfs拷貝到本地 示例:hadoop fs -copyToLocal /a/jdk.tar.gz ./
-cp
功能:從hdfs的一個路徑拷貝hdfs的另一個路徑 示例: hadoop fs -cp /a/jdk.tar.gz /b/jdk.tar.gz
-mv
功能:在hdfs目錄中移動檔案 示例: hadoop fs -mv /a/jdk.tar.gz /
-moveFromLocal
功能:從本地剪下貼上到hdfs 示例:hadoop fs - moveFromLocal /home/hadoop/a.txt /a
-moveToLocal
功能:從hdfs剪下貼上到本地 示例:hadoop fs - moveToLocal /a/a.txt /home/hadoop
–appendToFile
功能:追加一個檔案到已經存在的檔案末尾 示例:hadoop fs -appendToFile ./a.txt hdfs://server:9000/a.txt 可以簡寫為: Hadoop fs -appendToFile ./a.txt /a.txt
-get
功能:等同於copyToLocal,就是從hdfs下載檔案到本地 示例:hadoop fs -get /a/jdk.tar.gz ./
-getmerge
功能:合併下載多個檔案 示例:比如hdfs的目錄 /a/下有多個檔案:log.1, log.2,log.3,… hadoop fs -getmerge /a/log.* ./log.sum
-put
功能:等同於copyFromLocal 示例:hadoop fs -put /a/jdk.tar.gz /b/jdk.tar.gz
-rm
功能:刪除檔案或資料夾 示例:hadoop fs -rm -r /a/b/
-rmr
功能:遞迴刪除檔案或資料夾 示例:hadoop fs -rmr /a
-rmdir
功能:刪除空目錄 示例:hadoop fs -rmdir /a/b/c
-df
功能:統計檔案系統的可用空間資訊 示例:hadoop fs -df -h /
-du
功能:統計資料夾的大小資訊 示例:hadoop fs -du -s -h /a/*
-test
選項: -e 檢查檔案是否存在。如果存在則返回0。 -z 檢查檔案是否是0位元組。如果是則返回0。 -d 如果路徑是個目錄,則返回1,否則返回0 示例:hadoop fs -test -[ezd] /a/a.txt
-count
功能:統計一個指定目錄下的檔案節點數量 示例:hadoop fs -count /a/
-setrep
功能:設定hdfs中檔案的副本數量 示例:hadoop fs -setrep 3 /a/jdk.tar.gz
-expunge
功能:清空回收站 示例:hadoop fs -expunge