hdfs檔案的相關操作主要使用hadoop fs、hadoop dfs、hdfs dfs 命令,以下對最常用的相關命令進行簡要說明。
hadoop fs -ls 顯示當前目錄結構,-ls -r 遞迴顯示目錄結構
hadoop fs -mkdir 建立目錄
hadoop fs -rm 刪除檔案,-rm -r 遞迴刪除目錄和檔案
hadoop fs -put [localsrc] [dst] 從本地載入檔案到hdfs
hadoop fs -get [dst] [localsrc] 從hdfs匯出檔案到本地
hadoop fs - copyfromlocal [localsrc] [dst] 從本地載入檔案到hdfs,與put一致
hadoop fs -copytolocal [dst] [localsrc] 從hdfs匯出檔案到本地,與get一致
hadoop fs -test -e 檢測目錄和檔案是否存在,存在返回值$?為0,不存在返回1
hadoop fs -text 檢視檔案內容
hadoop fs -du 統計目錄下各檔案大小,單位位元組。-du -s 彙總目錄下檔案大小,-du -h 顯示單位
hadoop fs -tail 顯示檔案末尾
hadoop fs -cp [src] [dst] 從源目錄複製檔案到目標目錄
hadoop fs -mv [src] [dst] 從源目錄移動檔案到目標目錄
8,hadoop fs -test -e 檢測目錄和檔案是否存在,存在返回值$?為0,不存在返回1
9,hadoop fs -text 檢視檔案內容
10,hadoop fs -du 統計目錄下各檔案大小,單位位元組。-du -s 彙總目錄下檔案大小,-du -h 顯示單位
11,hadoop fs -tail 顯示檔案末尾
12,hadoop fs -cp [src] [dst] 從源目錄複製檔案到目標目錄
13,hadoop fs -mv [src] [dst] 從源目錄移動檔案到目標目錄
在hadoop2.7.4(hadoop2.x)中通過hdfs管理介面檢視/tmp目錄出現如下錯誤:
先開始一直糾結我是用hadoop使用者登入操作的,為什麼會是dr.who,dr.who其實是hadoop中http訪問的靜態使用者名稱,並沒有啥特殊含義,可以在core-default.xml中看到其配置,
hadoop.http.staticuser.user=dr.who
我們可以通過修改core-site.xml,配置為當前使用者,
另外,通過檢視hdfs的預設配置hdfs-default.xml發現hdfs預設是開啟許可權檢查的。
dfs.permissions.enabled=true #是否在hdfs中開啟許可權檢查,預設為true
由於當前使用者許可權不足,所以無法操作/tmp目錄。
解決方案:
解決方案有兩種,一是直接修改/tmp目錄的許可權設定,操作如下,
[hadoop@server hadoop-2.7.4]$ /bin/hdfs dfs -chmod -r 755 /tmp
然後就可以正常訪問/tmp目錄下的檔案了。
另一種是直接hdfs的許可權配置,
dfs.permissions.enabled
false
第二種方案可以在測試環境下使用,生產環境不建議這樣設定。 HDFS常用命令
選項名稱 使用格式 含義 ls ls 路徑 檢視指定路徑的當前目錄結構 lsr lsr 路徑 遞迴檢視指定路徑的目錄結構 du du 路徑 統計目錄下個檔案大小 dus dus 路徑 匯 計目錄下檔案 夾 大小 count count q 路徑 統計檔案 夾 數量 mv mv 源路徑 目的路徑 移動...
HDFS常用命令
size medium hdfs 常用的檔案操作命令 1.cat 使用方法 hadoop fs cat uri 說明 將路徑指定的檔案輸出到螢幕 示例 hadoop fs cat hdfs host1 port1 file hadoop fs cat file file3 2.copyfromloc...
Hdfs常用命令
1 列出hdfs下的所有檔案 hdfs dfs ls 例如,檢視ptc growt 件夾下的所有檔案 hdfs dfs ls user ptc growth 2 檢視某一檔案的內容 hdfs dfs text 例如 hdfs dfs text user ptc growth platc wx log...