本篇文章主要介绍使用shell命令在xhsell工具上操作HDFS分布式文件系统。
1、fs最常用命令
hadoop fs -ls hdfs_path //查看HDFS目录下的文件和子目录
hadoop fs -mkdir hdfs_path //在HDFS上创建文件夹
hadoop fs -rm hdfs_path //删除HDFS上的文件
hadoop fs -rmr hdfs_path //删除HDFS上的文件夹
hadoop fs -put local_file hdfs_path //将本地文件copy到HDFS上
hadoop fs -get hdfs_file local_path //复制HDFS文件到本地
hadoop fs -cat hdfs_file //查看HDFS上某文件的内容
2、查看目录下文件(夹)大小
//单位Byte:
bin/hadoop fs -du / | sort -n
//单位MB:
bin/hadoop fs -du / | awk -F ' ' '{printf "%.2fMB\t\t%s\n", $1/1024/1024,$2}' | sort -n
//单位GB,大于1G:
bin/hadoop fs -du / | awk -F ' ' '{num=$1/1024/1024/1024; if(num>1){printf "%.2fGB\t\t%s\n", num, $2} }' | sort -n
常用基本命令操作:
官网:http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/FileSystemShell.html
常用基本命令操作:
官网:http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/FileSystemShell.html
1、查看版本
- hdfs version
2、查看目录 hdfs dfs -ls
- hadoop fs -get /user/hadoop/file localfile
- hadoop fs -get hdfs://nn.example.com/user/hadoop/file localfile
- hadoop fs -ls /
3、添加文件夹 hadoop fs -mkdir /test
- hadoop fs -mkdir /user/hadoop/dir1 /user/hadoop/dir2
- hadoop fs -mkdir hdfs://nn1.example.com/user/hadoop/dir
4、删除文件
- hadoop fs -rmdir /user/hadoop/emptydir
5、修改文件 put
- hadoop fs -put localfile /user/hadoop/hadoopfile
- hadoop fs -put -f localfile1 localfile2 /user/hadoop/hadoopdir
- hadoop fs -put -d localfile hdfs://nn.example.com/hadoop/hadoopfile
- hadoop fs -put - hdfs://nn.example.com/hadoop/hadoopfile Reads the input from stdin.
6、移动文件
- hadoop fs -mv /user/hadoop/file1 /user/hadoop/file2
- hadoop fs -mv hdfs://nn.example.com/file1 hdfs://nn.example.com/file2
- hdfs://nn.example.com/file3 hdfs://nn.example.com/dir1
7、复制文件
- hadoop fs -cp /user/hadoop/file1 /user/hadoop/file2
8、文件写入
- hadoop fs -truncate -w 127 hdfs://nn1.example.com/user/hadoop/file1
- hadoop fs -truncate 55 /user/hadoop/file1 /user/hadoop/file2
9、查看
- hadoop fs -cat hdfs://nn1.example.com/file1 hdfs://nn2.example.com/file2
- hadoop fs -cat file:///file3 /user/hadoop/file4