HDFS基本指令:
hadoop fs -cmd
cmd: 具體的操作,基本上與UNIX的指令行相同
args:參數
HDFS資源URI格式:
scheme://authority/path
scheme:協定名,file或hdfs
authority:namenode主機名
path:路徑
示例:hdfs://localhost:9000/user/chunk/test.txt
假設已經在core-site.xml裡配置了 fs.default.name=hdfs://localhost:9000,則僅使用/user/chunk/test.txt即可。
hdfs預設工作目錄為 /user/$USER,$USER是目前的登入使用者名。
HDFS指令示例:
hadoop fs -mkdir /user/trunk
hadoop fs -ls /user
hadoop fs -lsr /user (遞歸的)
hadoop fs -put test.txt /user/trunk
hadoop fs -put test.txt . (複制到hdfs目前目錄下,首先要建立目前目錄)
hadoop fs -get /user/trunk/test.txt . (複制到本地目前目錄下)
hadoop fs -cat /user/trunk/test.txt
hadoop fs -tail /user/trunk/test.txt (檢視最後1000位元組)
hadoop fs -rm /user/trunk/test.txt
hadoop fs -help ls (檢視ls指令的幫助文檔)
hadoop fs -cat '/user/hive/warehouse/ci_cuser_20141231141853691/_SUCCESS'; hadoop fs -cat '/user/hive/warehouse/ci_cuser_20141231141853691/*'>CI_CUSERE_20141231141853691.csv && echo $?
~/.bash_profile:每個使用者都可使用該檔案輸入專用于自己使用的shell資訊,當使用者登入時,該
檔案僅僅執行一次!預設情況下,他設定一些環境變量,執行使用者的.bashrc檔案.
hadoop fs -cat '$1$2/*'>$3.csv
mv $3.csv/home/ocdc/coc
String command = "cd "+ ciFtpInfo.getFtpPath() + " && " +hadoopPath+ "hadoop fs -cat '/user/hive/warehouse/"+listName+"/*' > " +listTableName+".csv;";
'/home/ocdc/spark-1.2.0-oc-bin-2.3.0-cdh5.1.3/bin/beeline -u jdbc:hive2://10.1.251.98:10000 -n ocdc -p asiainfo
tar zxvf 檔案名.tar.gz
cp 檔案名1 檔案名2 (複制檔案)
管理者常用指令:
hadoop job –list #列出正在運作的Job
hadoop job –kill <job_id> #kill job
hadoop fsck / #檢查HDFS塊狀态,是否損壞
hadoop fsck / -delete #檢查HDFS塊狀态,删除損壞塊
hadoop dfsadmin –report #檢查HDFS狀态,包括DN資訊
hadoop dfsadmin –safemode enter | leave
hadoop distcp hdfs://a:8020/xxx hdfs://b:8020/// #并行copy