
在HDFS使用中,经常会需要查看目录数量、目录大小、文件数量
如果使用Kerberos认证,需要先登录认证。
[root@quickstart ~]# cd var/run/cloudera-scm-agent/process
[root@quickstart process]# ls -lrht | grep NAMENODE
drwxr-x--x 3 hdfs hdfs 380 Nov 9 09:13 139-hdfs-SECONDARYNAMENODE
drwxr-x--x 3 hdfs hdfs 540 Nov 9 09:13 137-hdfs-NAMENODE
drwxr-x--x 3 hdfs hdfs 560 Nov 9 09:14 140-hdfs-NAMENODE-nnRpcWait
[root@quickstart process]# klist -kt 137-hdfs-NAMENODE/hdfs.keytab
Keytab name: FILE:137-hdfs-NAMENODE/hdfs.keytab
KVNO Timestamp Principal
---- ----------------- --------------------------------------------------------
2 09/27/22 17:03:28 hdfs/quickstart.cloudera@CLOUDERA
2 09/27/22 17:03:28 hdfs/quickstart.cloudera@CLOUDERA
2 09/27/22 17:03:28 hdfs/quickstart.cloudera@CLOUDERA
2 09/27/22 17:03:28 hdfs/quickstart.cloudera@CLOUDERA
2 09/27/22 17:03:28 hdfs/quickstart.cloudera@CLOUDERA
2 09/27/22 17:03:28 HTTP/quickstart.cloudera@CLOUDERA
2 09/27/22 17:03:28 HTTP/quickstart.cloudera@CLOUDERA
2 09/27/22 17:03:28 HTTP/quickstart.cloudera@CLOUDERA
2 09/27/22 17:03:28 HTTP/quickstart.cloudera@CLOUDERA
2 09/27/22 17:03:28 HTTP/quickstart.cloudera@CLOUDERA
[root@quickstart process]# kinit -kt 137-hdfs-NAMENODE/hdfs.keytab hdfs/quickstart.cloudera@CLOUDERA
[root@quickstart process]# klist
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: hdfs/quickstart.cloudera@CLOUDERA
Valid starting Expires Service principal
11/09/22 10:25:08 11/10/22 10:25:08 krbtgt/CLOUDERA@CLOUDERA
renew until 11/14/22 10:25:081) 使用count参数查看
查看查看/user下的目录数和文件数、文件大小:
[root@quickstart process]# hdfs dfs -count -q -v user
QUOTA REM_QUOTA SPACE_QUOTA REM_SPACE_QUOTA DIR_COUNT FILE_COUNT CONTENT_SIZE PATHNAME
none inf none inf 138 921 861282820 user同时查看多个目录下的目录数和文件数、文件大小:
[root@quickstart ~]# hdfs dfs -count -q -v -h benchmarks user wk
QUOTA REM_QUOTA SPACE_QUOTA REM_SPACE_QUOTA DIR_COUNT FILE_COUNT CONTENT_SIZE PATHNAME
none inf none inf 1 0 0 benchmarks
none inf none inf 1.9 K 921 821.4 M user
none inf none inf 2 1 503 wk2) 使用du查看/user目录大小
查看所有文件及目录大小:
[root@quickstart process]# hdfs dfs -du -h /user
0 0 /user/cloudera
0 0 /user/history
0 0 /user/hive
0 0 /user/hue
0 0 /user/jenkins
821.4 M 821.4 M /user/oozie
0 0 /user/root
0 0 /user/spark查看目录大小:
[root@quickstart ~]# hdfs dfs -du -h -s /user #-s 统计父目录
821.4 M 821.4 M /user3) 使用egrep查看/user文件数和目录数
[root@quickstart process]# hdfs dfs -ls -R /user | egrep -c "^-"
921
[root@quickstart process]# hdfs dfs -ls -R /user | egrep -c "^d"
1434) 使用wc查看dfc_xa数据库目录数
[root@yw-namenode02 12569-hdfs-NAMENODE]# hdfs dfs -ls /user/hive/.Trash/Current/warehouse/tablespace/external/hive/dfc_xa.db | wc -l
9495) 查看HDFS整体使用
[root@quickstart ~]# hdfs dfs -df -h /
Filesystem Size Used Available Use%
hdfs://quickstart.cloudera:8020 54.5 G 832.6 M 31.5 G 1% 在查询单个目录中的文件时,加"-S"参数让文件按文件大小由大到小排序是有效的。
但是,加了"-R"递归参数查询子文件夹时,再加"-S"参数让文件按文件大小由大到小排序是无效的。
所以,只能执行hdfs dfs -ls -S /tmp | egrep "^-"命令,让某个文件夹内的文件按从大到小的顺序排列输出。
https://hadoop.apache.org/docs/r3.1.1/hadoop-project-dist/hadoop-common/FileSystemShell.html
最后修改时间:2022-11-17 10:28:11
文章转载自rundba,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




