呼叫檔案系統(fs)shell命令應用 bin / hadoop fs 的形式。(可以將hadoop的bin目錄配置環境變數)
所有的的fs shell命令使用uri路徑作為引數.uri格式是scheme://許可權/路徑。對hdfs檔案系統,方案是hdfs,對本地檔案系統,scheme是file。其中scheme和authority引數都是可選的,如果未加指定,就會使用配置中指定的預設方案。乙個hdfs檔案或目錄比如/ parent / child可以表示成hdfs:// namenode:namenodeport / parent / child,或者更簡單的/ parent / child(假設你配置檔案中的預設值是namenode:namenodeport)。用法:hadoop fs -mkdir [-p]
將路徑uri作為引數並建立目錄。
選項:-p選項行為很像unix mkdir -p,沿路徑建立父目錄。
例:hadoop fs -mkdir /user/hadoop/dir1 /user/hadoop/dir2
hadoop fs -mkdir hdfs: hdfs:
用法:hadoop fs -ls [-c] [-d] [-h] [-q] [-r] [-t] [-s] [-r] [-u]
選項:-c:僅顯示檔案和目錄的路徑。
-d:目錄列為純檔案。
-h:以人類可讀的方式格式化檔案大小(例如64.0m而不是67108864)。
-q:列印?而不是不可列印的字元。
-r:遞迴列出遇到的子目錄。
-t:按修改時間排序輸出(最近的第乙個)。
-s:按檔案大小排序輸出。
-r:反轉排序順序。
-u:使用訪問時間而不是修改時間進行顯示和排序。
對於檔案,ls使用以下格式返回檔案的stat:許可權number_of_replicas userid groupid filesize modification_date modification_time filename用法:hadoop fs -put [-f] [-p] [-l] [-d] < local file or dir >…< hdfs dir >對於目錄,它返回其直接子節點的列表,如在unix中。目錄列為:許可權userid groupid modification_date modification_time dirname
預設情況下,目錄中的檔案按檔名排序。
例:hadoop fs -ls / user / hadoop / file1
將單個src或多個srcs從本地檔案系統複製到目標檔案系統。如果源設定為「 - 」,還從stdin讀取輸入並寫入目標檔案系統。如果檔案已存在,則複製失敗,除非給出-f標誌。
選項:-p:保留訪問和修改時間,所有權和許可權。(假設許可權可以跨檔案系統傳播)
-f:覆蓋目標(如果已存在)。
-l:允許datanode延遲將檔案持久儲存到磁碟,強制複製因子為1.此標誌將導致永續性降低。小心使用。
-d:使用字尾._copying_跳過臨時檔案的建立。
例子:hadoop fs -put localfile / user / hadoop / hadoopfile
hadoop fs -put -f localfile1 localfile2 / user / hadoop / hadoopdir
hadoop fs -put -d localfile hdfs:
hadoop fs -put - hdfs: 從stdin讀取輸入。
3.1copyfromlocal
使用方法:hadoop fs -copyfromlocal uri
除了限定源路徑是乙個本地檔案外,和把命令相似。
用法:hadoop fs -get [-ignorecrc] [-crc] [-p] [-f]
將檔案複製到本地檔案系統。可以使用-ignorecrc選項複製crc校驗失敗的檔案。可以使用-crc選項複製檔案和crc。
例:hadoop fs -get /user/hadoop/file localfile
hadoop fs -get hdfs: localfile
4.1copytolocal
使用方法:hadoop fs -copytolocal [-ignorecrc] [-crc] uri
除了限定目標路徑是乙個本地檔案外,和get命令類似。
使用方法:hadoop fs -cp uri [uri …]
將檔案從源路徑複製到目標路徑這個命令允許有多個源路徑,此時目標路徑必須是乙個目錄。
示例:hadoop fs -cp /user/hadoop /file / user/hadoop/file2
hadoop fs -cp /user/hadoop/file1 /user/hadoop/file2 /user/hadoop/dir
用法:hadoop fs -mv uri [uri …]
將檔案從源移動到目標。此命令允許多個源,在這種情況下,目標需要是目錄。不允許跨檔案系統移動檔案。
例:hadoop fs -mv / user / hadoop / file1 / user / hadoop / file2
hadoop fs -mv hdfs: hdfs: hdfs: hdfs:
退出**:
用法:hadoop fs -du [-s] [-h] [-x] uri [uri …]
顯示給定目錄中包含的檔案和目錄的大小或檔案的長度,以防它只是乙個檔案。
選項:-s選項將導致顯示檔案長度的彙總摘要,而不是單個檔案。如果沒有-s選項,則通過從給定路徑向上移動1級來完成計算。
-h選項將以「人類可讀」的方式格式化檔案大小(例如64.0m而不是67108864)
-x選項將從結果計算中排除快照。如果沒有-x選項(預設),則始終從所有inode計算結果,包括給定路徑下的所有快照。
du返回三列,格式如下:
size disk_space_consumed_with_all_replicas full_path_name
例:hadoop fs -du / user / hadoop / dir1 / user / hadoop / file1 hdfs:
用法:hadoop fs -text
獲取原始檔並以文字格式輸出檔案。允許的格式為zip和textrecordinputstream。
使用方法:hadoop fs -cat uri [uri …]
將路徑指定檔案的內容輸出到stdout。
示例:hadoop fs -cat hdfs://host1:port1/file1 hdfs://host2:port2/file2
hadoop fs -cat file:///file3/user/hadoop/file4
使用方法:hadoop fs -chmod [-r] uri [uri …]
改變檔案的許可權。使用-r將使改變在目錄結構下遞迴進行。命令的使用者必須是檔案的所有者或者超級使用者。
使用方法:hadoop fs -chown [-r] [owner] [:[group]] uri [uri]
改變檔案的擁有者。使用-r將使改變在目錄結構下遞迴進行。命令的使用者必須是超級使用者。
用法:hadoop fs -df [-h] uri [uri …]
顯示可用空間。
選項:-h選項將以「人類可讀」的方式格式化檔案大小(例如64.0m而不是67108864)
例:hadoop dfs -df / user / hadoop / dir1
hadoop HDFS常用檔案操作命令
hdfs dfs 與 hadoop fs 效果一樣 1.put從本地載入檔案到hdfs 基本語法 localfile hdfs file hdfs file的父目錄一定要存在,否則命令不會執行 localfileordir hdfs dir hdfs dir 一定要存在,否則命令不會執行 從鍵盤讀取...
hadoop HDFS常用檔案操作命令
1 hadoop fs cmd args 1.ls 列出hdfs檔案系統根目錄下的目錄和檔案 1hadoop fs ls dir 1hadoop fs ls r dir 列出hdfs檔案系統所有的目錄和檔案 2.put hadoop fs put hdfs file的父目錄一定要存在,否則命令不會執...
hadoop hdfs 檔案優點
隨著網際網路資料規模的不斷增大,對檔案儲存系統提出了更高的要求,需要更大的容量 更好的效能以及更高安全性的檔案儲存系統,與傳統分布式檔案系統一樣,hdfs分布式檔案系統也是通過計算機網路與節點相連,但也有優於傳統分布式檔案系統的優點。1.支援超大檔案 hdfs分布式檔案系統具有很大的資料集,可以儲存...