hdfs命令是指Hadoop hdfs系統的命令,其常用命令包括:1、ls命令;2、cat命令;3、mkdir命令;4、rm命令;5、put命令;6、cp命令;7、copyFromLocal命令;8、get命令;9、copyToLocal命令;10、mv命令等。
本教學操作環境:linux5.9.8系統、Dell G3電腦。
hdfs命令是什麼?
指Hadoop hdfs系統的命令。
操作hdfs系統可以使用hadoop fs 也可以使用 hdfs dfs ,兩者效果一樣。(hadoop dfs命令已不再建議使用)
Hadoop hdfs系統的一些常用命令
一、hadoop fs (hdfs dfs) 檔案操作
ls 顯示目錄下的所有檔案或者資料夾
使用方法: hadoop fs -ls [uri形式目錄]
範例: hadoop fs –ls / 顯示根目錄下的所有檔案和目錄
顯示目錄下的所有檔案可以加 -R 選項
範例: hadoop fs -ls -R /
cat 檢視檔案內容
使用方法:hadoop fs -cat URI [URI …]
範例: hadoop fs -cat /in/test2.txt
mkdir 建立目錄
使用方法:hadoop fs -mkdir [uri形式目錄]
範例: hadoop fs –mkdir /test
建立多級目錄 加上 –p
範例: hadoop fs –mkdir -p /a/b/c
rm 刪除目錄或者檔案
使用方法:hadoop fs -rm [檔案路徑] 刪除資料夾加上 -r
範例: hadoop fs -rm /test1.txt
刪除資料夾加上 -r,
範例:hadoop fs -rm -r /test
put 複製檔案
將檔案複製到hdfs系統中,也可以是從標準輸入中讀取檔案,此時的dst是一個檔案
使用方法: hadoop fs -put <localsrc> ... <dst>
範例:
Hadoop fs -put /usr/wisedu/temp/test1.txt /
從標準輸入中讀取檔案:hadoop fs -put -/in/myword
cp 複製系統內檔案
使用方法:hadoopfs -cp URI [URI …] <dest>
將檔案從源路徑複製到目標路徑。這個命令允許有多個源路徑,此時目標路徑必須是一個目錄。
範例:
hadoop fs -cp /in/myword/word
登入後複製
copyFromLocal 複製本地檔案到hdfs
使用方法:hadoop fs-copyFromLocal <localsrc> URI
除了限定源路徑是一個本地檔案外,和put命令相似
get 複製檔案到本地系統
使用方法:hadoop fs -get[-ignorecrc] [-crc] <src> <localdst>
複製檔案到本地檔案系統。可用-ignorecrc選項複製CRC校驗失敗的檔案。使用-crc選項複製檔案以及CRC資訊。
範例:hadoop fs -get/word /usr/wisedu/temp/word.txt
copyToLocal 複製 檔案到本地系統
使用方法:hadoop fs-copyToLocal [-ignorecrc] [-crc] URI <localdst>
除了限定目標路徑是一個本地檔案外,和get命令類似。
範例:hadoop fs - copyToLocal/word /usr/wisedu/temp/word.txt
mv
將檔案從源路徑移動到目標路徑。這個命令允許有多個源路徑,此時目標路徑必須是一個目錄。不允許在不同的檔案系統間移動檔案。
使用方法:hadoop fs -mv URI [URI …] <dest>
範例:hadoop fs -mv /in/test2.txt /test2.txt
du 顯示檔案大小
顯示目錄中所有檔案的大小。
使用方法:hadoop fs -du URI [URI …]
範例: hadoop fs -du /
顯示當前目錄或者資料夾的大小可加選項 -s
範例: hadoop fs -du -s /
touchz 建立空檔案
使用方法:hadoop fs -touchz URI [URI …]
建立一個0位元組的空檔案
範例:hadoop fs -touchz /empty.txt
chmod 改變檔案許可權
使用方法:hadoop fs -chmod[-R] <MODE[,MODE]... | OCTALMODE> URI [URI …]
與Linux平臺下chmod命令相似,改變檔案的許可權。使用-R將使改變在目錄結構下遞迴進行。命令的使用者必須是檔案的所有者或者超級使用者。
範例:先建立一個普通使用者test:sudo useradd -m test
再用wisedu使用者在hdfs系統目錄/a下建立hello.txt檔案,此時test具有讀取/a/hello.txt檔案的許可權,如下圖:
在切換回wisedu使用者修改檔案的許可權,讓/a目錄下的檔案對於其他使用者都不可讀,命令: hadoop fs -chmod -R o-r /a 如下圖所示,再切換回test使用者檢視/a/hello.txt檔案時提示沒有許可權:
chown 改變檔案所有者
使用方法:hadoop fs -chown [-R] [OWNER][:[GROUP]] URI [URI]
改變檔案的擁有者。使用-R將使改變在目錄結構下遞迴進行。命令的使用者必須是超級使用者。
範例:hadoop fs -chown -R test /a 如下圖:
chgrp 改變檔案所在組
使用方法:hadoop fs -chgrp [-R] GROUP URI [URI …]
改變檔案所屬的組。使用-R將使改變在目錄結構下遞迴進行。命令的使用者必須是檔案的所有者或者超級使用者。
範例:hadoop fs -chgrp -R test /a 如下圖:
二、hdfs dfsadmin 管理命令
1) -report
檢視檔案系統的基本資訊和統計資訊。
範例:hdfs dfsadmin -report
2) -safemode
enter | leave | get | wait:安全模式命令。安全模式是NameNode的一種狀態,在這種狀態下,NameNode不接受對名稱空間的更改(唯讀);不復制或刪除塊。NameNode在啟動時自動進入安全模式,當設定塊的最小百分數滿足最小副本數的條件時,會自動離開安全模式。enter是進入,leave是離開。
範例:hdfs dfsadmin -safemode get
hdfsdfsadmin -safemode enter
3) -refreshNodes
重新讀取hosts和exclude檔案,使新的節點或需要退出叢集的節點能夠被NameNode重新識別。這個命令在新增節點或登出節點時用到。
範例:hdfs dfsadmin -refreshNodes
4) -finalizeUpgrade
終結HDFS的升級操作。DataNode刪除前一個版本的工作目錄,之後NameNode也這樣做。
5) -upgradeProgress
status| details | force:請求當前系統的升級狀態 | 升級狀態的細節| 強制升級操作
6) -metasave filename
儲存NameNode的主要資料結構到hadoop.log.dir屬性指定的目錄下的<filename>檔案中。
7) -setQuota<quota><dirname>……<dirname>
為每個目錄<dirname>設定配額<quota>。目錄配額是一個長整形整數,強制設定目錄樹下的名字個數。
8) -clrQuota<dirname>……<dirname>
為每個目錄<dirname>清除配額設定。
9) -help
顯示幫助資訊
更多相關知識,請存取欄目!
以上就是hdfs命令是什麼的詳細內容,更多請關注TW511.COM其它相關文章!