1、HDFS入門node
2、HDFS基本操做shell
1、shell命令行客戶端app
Hadoop提供了文件系統的shell命令行客戶端,使用方法以下:分佈式
Hadoop fs <args>(參數哪個文件系統和什麼樣的操做)oop
文件系統shell包括與Hadoop分佈式文件系統(HDFS)以及Hadoop支持的其餘文件系統(如本地FS, HFTP FS, S3 FS等)直接交互的各類相似shell的命令。全部FS shell命令都將路徑URI做爲參數spa
URI格式爲scheme://suthority/path。命令行
對於HDFS來講:scheme是hdfs;blog
對於本地FS來講:scheme是file遞歸
scheme和authority是可選的,若是未指定,則使用配置中指定的默認方案hadoop
對於HDFS,命令示例以下:
Hadoop fs -ls hdfs://namenode:host/parent/child
Hadoop fs -ls /parent/child fs.defaultFS中有配置
對於本地文件系統命令示例以下
Hadoop fs -ls file:///root
若是使用的文件系統是HDFS,則使用hdfs dfs也是能夠的,此時
Hadoop fs <args> = hdfs dfs <args>
3、shell經常使用命令
1、-ls
功能:
顯示文件、目錄信息
使用:
hadoop fs -ls [-h](human給大小加上了單位) <args>
示例:
hadoop fs -ls /hello
hadoop fs -ls -h /hello
2、-mkdir
功能:
在hdfs上建立目錄,-p表示會建立路徑中的各級父目錄。
使用:
hadoop fs -mkdir [-p] <paths>
示例:
hadoop fs -mkdir -p /hello/hello1/hello2
3、-put
功能:
將單個文件或多個文件從本地文件系統複製(上傳)到目標文件系統
使用:
hadoop fs -put [-f] [-p] 本地文件目錄 目標文件目錄
-p:表示保留訪問和修改時間,全部權和權限
-f:覆蓋目的地(若是已經存在)
示例:
hadoop fs -put /root/install.log.syslog /
4、-get
功能:
將文件複製(下載)到本地文件系統
使用:
hadoop fs -get [ignorecrc] [-crc] [-p] [-f] 文件系統目錄 本地文件保 存目錄
-ignorecrc:跳過對下載文件的CRC檢查
-crc:爲下載的文件寫CRC效驗和
示例:
hadoop fs -get /install.log.syslog ./(當前目錄)
5、-appendToFile
功能:
追加一個文件到已經存在的文件末尾
使用:
hadoop fs -appendToFile 本地文件目錄 目標文件目錄
示例:
hadoop fs -appendToFile 2.txt /1.txt
6、-cat
功能:
顯示文件內容
使用:
hadoop fs -cat 文件目錄
示例:
hadoop fs -cat /1.txt
7、-tail
功能:
查看文件的最後一千字內容
使用:
hadoop fs -tail [-f] 目錄
示例:
hadoop fs -tail /hadoop/hadoopfile
8、-getmerge
功能:
合併下在多個文件
示例:
好比hdfs目錄 /aaa下多個文件:log.1, log.12, log.3
Hadoop fs -getmerge /aaa/log.* ./log.sum
9、-setrep
功能:改變一個文件的副本系數。-R 選項用於遞歸改變目錄下全部文件的副本系數
示例:hadoop fs -setrep -w 3(副本個數) [-R(一個文件不用寫)] /user/hadoop/dir1