Hadoop常用命令
啟動HDFS集群
[hadoop@hadoop1 ~]$ start-dfs.sh Starting namenodes on [hadoop1] hadoop1: starting namenode, logging to /home/hadoop/apps/hadoop-2.7.5/logs/hadoop-hadoop-namenode-hadoop1.out hadoop2: starting datanode, logging to /home/hadoop/apps/hadoop-2.7.5/logs/hadoop-hadoop-datanode-hadoop2.out hadoop3: starting datanode, logging to /home/hadoop/apps/hadoop-2.7.5/logs/hadoop-hadoop-datanode-hadoop3.out hadoop4: starting datanode, logging to /home/hadoop/apps/hadoop-2.7.5/logs/hadoop-hadoop-datanode-hadoop4.out hadoop1: starting datanode, logging to /home/hadoop/apps/hadoop-2.7.5/logs/hadoop-hadoop-datanode-hadoop1.out Starting secondary namenodes [hadoop3] hadoop3: starting secondarynamenode, logging to /home/hadoop/apps/hadoop-2.7.5/logs/hadoop-hadoop-secondarynamenode-hadoop3.out [hadoop@hadoop1 ~]$
啟動YARN集群
[hadoop@hadoop4 ~]$ start-yarn.sh starting yarn daemons starting resourcemanager, logging to /home/hadoop/apps/hadoop-2.7.5/logs/yarn-hadoop-resourcemanager-hadoop4.out hadoop2: starting nodemanager, logging to /home/hadoop/apps/hadoop-2.7.5/logs/yarn-hadoop-nodemanager-hadoop2.out hadoop3: starting nodemanager, logging to /home/hadoop/apps/hadoop-2.7.5/logs/yarn-hadoop-nodemanager-hadoop3.out hadoop4: starting nodemanager, logging to /home/hadoop/apps/hadoop-2.7.5/logs/yarn-hadoop-nodemanager-hadoop4.out hadoop1: starting nodemanager, logging to /home/hadoop/apps/hadoop-2.7.5/logs/yarn-hadoop-nodemanager-hadoop1.out [hadoop@hadoop4 ~]$
查看HDFS系統根目錄
[hadoop@hadoop1 ~]$ hadoop fs -ls / Found 2 items drwxr-xr-x - hadoop supergroup 0 2018-03-03 11:42 /test drwx------ - hadoop supergroup 0 2018-03-03 11:42 /tmp [hadoop@hadoop1 ~]$
創建文件夾
[hadoop@hadoop1 ~]$ hadoop fs -mkdir /a [hadoop@hadoop1 ~]$ hadoop fs -ls / Found 3 items drwxr-xr-x - hadoop supergroup 0 2018-03-08 11:09 /a drwxr-xr-x - hadoop supergroup 0 2018-03-03 11:42 /test drwx------ - hadoop supergroup 0 2018-03-03 11:42 /tmp [hadoop@hadoop1 ~]$
級聯創建文件夾
[hadoop@hadoop1 ~]$ hadoop fs -mkdir -p /aa/bb/cc [hadoop@hadoop1 ~]$
查看hsdf系統根目錄下的所有文件包括子文件夾里面的文件
[hadoop@hadoop1 ~]$ hadoop fs -ls -R /aa
drwxr-xr-x - hadoop supergroup 0 2018-03-08 11:12 /aa/bb
drwxr-xr-x - hadoop supergroup 0 2018-03-08 11:12 /aa/bb/cc
[hadoop@hadoop1 ~]$
上傳文件
[hadoop@hadoop1 ~]$ ls
apps data words.txt
[hadoop@hadoop1 ~]$ hadoop fs -put words.txt /aa
[hadoop@hadoop1 ~]$ hadoop fs -copyFromLocal words.txt /aa/bb
[hadoop@hadoop1 ~]$
下載文件
[hadoop@hadoop1 ~]$ hadoop fs -get /aa/words.txt ~/newwords.txt [hadoop@hadoop1 ~]$ ls apps data newwords.txt words.txt [hadoop@hadoop1 ~]$ hadoop fs -copyToLocal /aa/words.txt ~/newwords1.txt [hadoop@hadoop1 ~]$ ls apps data newwords1.txt newwords.txt words.txt [hadoop@hadoop1 ~]$
合並下載
[hadoop@hadoop1 ~]$ hadoop fs -getmerge /aa/words.txt /aa/bb/words.txt ~/2words.txt [hadoop@hadoop1 ~]$ ll 總用量 24 -rw-r--r--. 1 hadoop hadoop 78 3月 8 12:42 2words.txt drwxrwxr-x. 3 hadoop hadoop 4096 3月 3 10:30 apps drwxrwxr-x. 3 hadoop hadoop 4096 3月 3 11:40 data -rw-r--r--. 1 hadoop hadoop 39 3月 8 11:49 newwords1.txt -rw-r--r--. 1 hadoop hadoop 39 3月 8 11:48 newwords.txt -rw-rw-r--. 1 hadoop hadoop 39 3月 3 11:31 words.txt [hadoop@hadoop1 ~]$
復制
從HDFS一個路徑拷貝到HDFS另一個路徑
[hadoop@hadoop1 ~]$ hadoop fs -ls /a [hadoop@hadoop1 ~]$ hadoop fs -cp /aa/words.txt /a [hadoop@hadoop1 ~]$ hadoop fs -ls /a Found 1 items -rw-r--r-- 2 hadoop supergroup 39 2018-03-08 12:46 /a/words.txt [hadoop@hadoop1 ~]$
移動
在HDFS目錄中移動文件
[hadoop@hadoop1 ~]$ hadoop fs -ls /aa/bb/cc [hadoop@hadoop1 ~]$ hadoop fs -mv /a/words.txt /aa/bb/cc [hadoop@hadoop1 ~]$ hadoop fs -ls /aa/bb/cc Found 1 items -rw-r--r-- 2 hadoop supergroup 39 2018-03-08 12:46 /aa/bb/cc/words.txt [hadoop@hadoop1 ~]$
刪除
刪除文件或文件夾
[hadoop@hadoop1 ~]$ hadoop fs -rm /aa/bb/cc/words.txt 18/03/08 12:49:08 INFO fs.TrashPolicyDefault: Namenode trash configuration: Deletion interval = 0 minutes, Emptier interval = 0 minutes. Deleted /aa/bb/cc/words.txt [hadoop@hadoop1 ~]$ hadoop fs -ls /aa/bb/cc [hadoop@hadoop1 ~]$
刪除空目錄
[hadoop@hadoop1 ~]$ hadoop fs -rmdir /aa/bb/cc/ [hadoop@hadoop1 ~]$ hadoop fs -ls /aa/bb/ Found 1 items -rw-r--r-- 2 hadoop supergroup 39 2018-03-08 11:43 /aa/bb/words.txt [hadoop@hadoop1 ~]$
強制刪除
[hadoop@hadoop1 ~]$ hadoop fs -rm /aa/bb/ rm: `/aa/bb': Is a directory [hadoop@hadoop1 ~]$ hadoop fs -rm -r /aa/bb/ 18/03/08 12:51:31 INFO fs.TrashPolicyDefault: Namenode trash configuration: Deletion interval = 0 minutes, Emptier interval = 0 minutes. Deleted /aa/bb [hadoop@hadoop1 ~]$ hadoop fs -ls /aa Found 1 items -rw-r--r-- 2 hadoop supergroup 39 2018-03-08 11:41 /aa/words.txt [hadoop@hadoop1 ~]$
從本地剪切文件到HDFS上
[hadoop@hadoop1 ~]$ ls apps data hello.txt [hadoop@hadoop1 ~]$ hadoop fs -moveFromLocal ~/hello.txt /aa [hadoop@hadoop1 ~]$ ls apps data [hadoop@hadoop1 ~]$
追加文件
追加之前hello.txt到words.txt之前

[hadoop@hadoop1 ~]$ hadoop fs -appendToFile ~/hello.txt /aa/words.txt [hadoop@hadoop1 ~]$
追加之前hello.txt到words.txt之后

查看文件內容
[hadoop@hadoop1 ~]$ hadoop fs -cat /aa/hello.txt hello hello hello [hadoop@hadoop1 ~]$
chgrp
使用方法:hadoop fs -chgrp [-R] GROUP URI [URI …] Change group association of files. With -R, make the change recursively through the directory structure. The user must be the owner of files, or else a super-user. Additional information is in the Permissions User Guide. -->
改變文件所屬的組。使用-R將使改變在目錄結構下遞歸進行。命令的使用者必須是文件的所有者或者超級用戶。更多的信息請參見HDFS權限用戶指南。
chmod
使用方法:hadoop fs -chmod [-R] <MODE[,MODE]... | OCTALMODE> URI [URI …]
改變文件的權限。使用-R將使改變在目錄結構下遞歸進行。命令的使用者必須是文件的所有者或者超級用戶。更多的信息請參見HDFS權限用戶指南。
chown
使用方法:hadoop fs -chown [-R] [OWNER][:[GROUP]] URI [URI ]
改變文件的擁有者。使用-R將使改變在目錄結構下遞歸進行。命令的使用者必須是超級用戶。更多的信息請參見HDFS權限用戶指南。
du
使用方法:hadoop fs -du URI [URI …]
顯示目錄中所有文件的大小,或者當只指定一個文件時,顯示此文件的大小。
示例:
hadoop fs -du /user/hadoop/dir1 /user/hadoop/file1 hdfs://host:port/user/hadoop/dir1
返回值:
成功返回0,失敗返回-1。
dus
使用方法:hadoop fs -dus <args>
顯示文件的大小。
expunge
使用方法:hadoop fs -expunge
清空回收站。請參考HDFS設計文檔以獲取更多關於回收站特性的信息。
setrep
使用方法:hadoop fs -setrep [-R] <path>
改變一個文件的副本系數。-R選項用於遞歸改變目錄下所有文件的副本系數。
示例:
- hadoop fs -setrep -w 3 -R /user/hadoop/dir1
返回值:
成功返回0,失敗返回-1。
tail
使用方法:hadoop fs -tail [-f] URI
將文件尾部1K字節的內容輸出到stdout。支持-f選項,行為和Unix中一致。
示例:
- hadoop fs -tail pathname
返回值:
成功返回0,失敗返回-1。
test
使用方法:hadoop fs -test -[ezd] URI
選項:
-e 檢查文件是否存在。如果存在則返回0。
-z 檢查文件是否是0字節。如果是則返回0。
-d 如果路徑是個目錄,則返回1,否則返回0。
示例:
- hadoop fs -test -e filename
查看集群的工作狀態
[hadoop@hadoop1 ~]$ hdfs dfsadmin -report Configured Capacity: 73741402112 (68.68 GB) Present Capacity: 52781039616 (49.16 GB) DFS Remaining: 52780457984 (49.16 GB) DFS Used: 581632 (568 KB) DFS Used%: 0.00% Under replicated blocks: 0 Blocks with corrupt replicas: 0 Missing blocks: 0 Missing blocks (with replication factor 1): 0 ------------------------------------------------- Live datanodes (4): Name: 192.168.123.102:50010 (hadoop1) Hostname: hadoop1 Decommission Status : Normal Configured Capacity: 18435350528 (17.17 GB) DFS Used: 114688 (112 KB) Non DFS Used: 4298661888 (4.00 GB) DFS Remaining: 13193277440 (12.29 GB) DFS Used%: 0.00% DFS Remaining%: 71.57% Configured Cache Capacity: 0 (0 B) Cache Used: 0 (0 B) Cache Remaining: 0 (0 B) Cache Used%: 100.00% Cache Remaining%: 0.00% Xceivers: 1 Last contact: Thu Mar 08 13:05:11 CST 2018 Name: 192.168.123.105:50010 (hadoop4) Hostname: hadoop4 Decommission Status : Normal Configured Capacity: 18435350528 (17.17 GB) DFS Used: 49152 (48 KB) Non DFS Used: 4295872512 (4.00 GB) DFS Remaining: 13196132352 (12.29 GB) DFS Used%: 0.00% DFS Remaining%: 71.58% Configured Cache Capacity: 0 (0 B) Cache Used: 0 (0 B) Cache Remaining: 0 (0 B) Cache Used%: 100.00% Cache Remaining%: 0.00% Xceivers: 1 Last contact: Thu Mar 08 13:05:13 CST 2018 Name: 192.168.123.103:50010 (hadoop2) Hostname: hadoop2 Decommission Status : Normal Configured Capacity: 18435350528 (17.17 GB) DFS Used: 233472 (228 KB) Non DFS Used: 4295700480 (4.00 GB) DFS Remaining: 13196120064 (12.29 GB) DFS Used%: 0.00% DFS Remaining%: 71.58% Configured Cache Capacity: 0 (0 B) Cache Used: 0 (0 B) Cache Remaining: 0 (0 B) Cache Used%: 100.00% Cache Remaining%: 0.00% Xceivers: 1 Last contact: Thu Mar 08 13:05:11 CST 2018 Name: 192.168.123.104:50010 (hadoop3) Hostname: hadoop3 Decommission Status : Normal Configured Capacity: 18435350528 (17.17 GB) DFS Used: 184320 (180 KB) Non DFS Used: 4296941568 (4.00 GB) DFS Remaining: 13194928128 (12.29 GB) DFS Used%: 0.00% DFS Remaining%: 71.57% Configured Cache Capacity: 0 (0 B) Cache Used: 0 (0 B) Cache Remaining: 0 (0 B) Cache Used%: 100.00% Cache Remaining%: 0.00% Xceivers: 1 Last contact: Thu Mar 08 13:05:10 CST 2018 [hadoop@hadoop1 ~]$
