更新時(shí)間:2021-04-28 來源:黑馬程序員 瀏覽量:
Shell在計(jì)算機(jī)科學(xué)中俗稱“殼”,是提供給使用者使用界面的進(jìn)行與系統(tǒng)交互的軟件,通過接收用戶輸入的命令執(zhí)行相應(yīng)的操作,Shell分為圖形界面Shell和命令行式Shell。
HDFS Shell包含類似Shell的命令,示例如下:
hadoop fs <args>
hadoop dfs <args>
hdfs dfs <args>
上述命令中,“hadoop fs”是使用面最廣,可以操作任何文件系統(tǒng),如本地系統(tǒng)、HDFS等,“hadoop dfs”則主要針對(duì)HDFS文件系統(tǒng),已經(jīng)被“hdfs dfs”代替。
文件系統(tǒng)(FS)Shell包含了各種的類shell的命令,可以直接與Hadoop分布式文件系統(tǒng)以及其他文件系統(tǒng)進(jìn)行交互,如與Local FS、HTTP FS、S3 FS文件系統(tǒng)交互等。通過命令行的方式進(jìn)行交互,具體操作常用命令,如表1所示。
表1 HDFS Shell參數(shù)
命令參數(shù) | 功能描述 |
---|---|
-ls | 查看指定路徑的目錄結(jié)構(gòu) |
-du | 統(tǒng)計(jì)目錄下所有文件大小 |
-mv | 移動(dòng)文件 |
-cp | 復(fù)制文件 |
-rm | 刪除文件/空白文件夾 |
-put | 上傳文件 |
-cat | 查看文件內(nèi)容 |
-text | 將源文件輸出為文本格式 |
-mkdir | 創(chuàng)建空白文件夾 |
-help | 幫助 |
1.ls命令
ls命令用于查看指定路徑的當(dāng)前目錄結(jié)構(gòu),類似于Linux系統(tǒng)中的ls命令,其語(yǔ)法格式如下:
hadoop fs –ls [-d] [-h] [-R] <args>
其中,各項(xiàng)參數(shù)說明如下:
l -d:將目錄顯示為普通文件。
l -h:使用便于操作人員讀取的單位信息格式。
l -R:遞歸顯示所有子目錄的信息。
示例代碼如下:
$ hadoop fs -ls /
上述示例代碼,執(zhí)行完成后會(huì)展示HDFS根目錄下的所有文件及文件夾,如圖1所示。
圖1 ls命令效果
2.mkdir命令
mkdir命令用于在指定路徑下創(chuàng)建子目錄,其中創(chuàng)建的路徑可以采用URI格式進(jìn)行指定,與Linux命令mkdir相同,可以創(chuàng)建多級(jí)目錄,其語(yǔ)法格式如下:
hadoop fs –mkdir [-p] <paths>
其中-p參數(shù)表示創(chuàng)建子目錄使先檢查路徑是否存在,如果不存在,則創(chuàng)建相應(yīng)的各級(jí)目錄。
示例代碼如下:
$ hadoop fs -mkdir -p /itcast/hadoop上述示例代碼,是在HDFS系統(tǒng)的根目錄下創(chuàng)建“itcast/hadoop”層級(jí)文件夾,“-p”參數(shù)表示遞歸創(chuàng)建路徑中的各級(jí)目錄。執(zhí)行命令后效果如圖2所示。
圖2 mkdir命令效果
3.put命令
put命令用于將本地系統(tǒng)的文件或文件夾復(fù)制到HDFS系統(tǒng)上去,其語(yǔ)法格式如下:
hadoop fs -put [-f] [-p] <locationsrc> <det>
其中各項(xiàng)說明如下:
-f:覆蓋目標(biāo)文件-p:保留訪問和修改時(shí)間、權(quán)限
示例代碼如下:
$ hadoop fs -put -f install.log /
上述指令執(zhí)行成功后查詢HDFS根目錄效果如圖3所示。
圖3 put命令效果
猜你喜歡:
HDFS究竟是什么?HDFS是怎樣儲(chǔ)存數(shù)據(jù)的?