赞
踩
目录
命令 | 适用场合 |
---|---|
hadoop fs | 适用于任何不同的文件系统,比如本地文件系统和HDFS文件系统 |
hadoop dfs | 只能适用于HDFS文件系统 |
hdfs dfs | hdfs dfs跟hadoop dfs的命令作用一样,也只能适用于HDFS文件系统 |
cat
命令用法 序号 | 命令 | 功能 |
1 | hdfs dfs -ls <path> | 显示<path>指定的文件或目录的详细信息。 |
2 | hdfs dfs -ls -R <path> | ls命令的递归版本。 |
3 | hdfs dfs -cat <path> 将<path> | 指定文件的内容输出到标准输出。 |
4 | hdfs dfs chgrp [-R] group <path> | 将<path>指定文件所属的组改为group,使用-R对<path>指定目录内的文件进行递归操作。这个命令只适合于超级用户。 |
5 | hdfs dfs -chown [-R] [owner][:[group]] <path> | 改变<path>指定文件或目录的拥有者,-R用于递归改变目录内的文件或目录的拥有者。 这个命令只适合于超级用户。 |
6 | hdfs dfs -chmod [-R] <mode> <path> | 将<path>指定文件或目录的权限更改为<mode>。这个命令只适合于超级用户和文件或目录的拥有者。 |
7 | hdfs dfs -tail [-f] <path> 将<path> | 指定文件最后1KB的内容输出到标准输出上,-f选项用于持续检测新添加到文件中的内容。 |
8 | hdfs dfs -stat [format] <path> | 以指定格式返回<path>指定文件的相关信息。当不指定format的时候,返回文件<path>的创建日期。 |
9 | hdfs dfs -touchz <path> | 创建一个<path>指定的空文件。 |
10 | hdfs dfs -mkdir [-p] <paths> | 创建<paths>指定的一个或多个目录,-p选项用于递归创建子目录。 |
11 | hdfs dfs -copyFromLocal <localsrc> <dst> | 将本地源文件<localsrc>复制到路径指定的文件或目录中。 |
12 | hadoo fs -copyToLocal [-ignorcrc] [-crc] <target> <localdst> | 将目标文件<target>复制到本地文件或目录<localdst>中,可用-ignorecrc选项复制CRC校验失败的文件,使用-crc选项复制文件以及CRC信息。 |
13 | hdfs dfs -cp <src> <dst> | 将文件从源路径<src>复制到目标路径<dst>。 |
14 | hdfs dfs -du <path> | 显示<path>指定文件或目录内所有文件的大小。 |
15 | hdfs dfs -expunge | 清空回收站。 |
16 | hdfs dfs -get [-ignorcrc] [-crc] <src> <localdst> | 复制<src>指定的文件到本地文件系统<localdst>指定的文件或目录内,可用-ignorecrc选项复制CRC校验失败的文件,使用-crc选项复制文件以及CRC信息。 |
17 | hdfs dfs -getmerge [-nl] <src> <localdst> 对<src> | 指定目录内所有文件进行合并,写入<localdst>指定的本地文件。-nl是可选的,用于指定在每个文件结尾添加一个换行符。 |
18 | hdfs dfs -put <localsrc> <dst> | 从本地文件系统中复制<localsrc>指定的单个或多个源文件到<dst>指定的目标文件系统中。 |
19 | hdfs dfs moveFromLocal <localsrc> <dst> | 与put命令功能相同,但是文件上传结束后会从本地文件系统中删除<localsrc>指定的文件。 |
20 | hdfs dfs -mv <src> <dst> | 将文件或目录从源路径<src>移到目标路径<dst>。 |
21 | hdfs dfs -rm <path> | 删除<path>指定的文件或目录(非空目录)。 |
22 | hdfs dfs -rm -r <path> | 删除<path>指定的目录及其下的所有文件,-r选项表示递归删除子目录。 |
23 | hdfs dfs -setrep [-R] <path> | 改变<path>指定文件的副本数,-R选项用于递归改变目录下所有文件的副本数。 |
24 | hdfs dfs -test [-ezd] <path> | 检查<path>指定文件或目录的相关信息。 -e (exist)检查文件是否存在,如果存在则返回0,否则返回1 -z (zero)检查文件是否是零字节,如果是则返回0,否则返回1 -d(directory)检查路径是否是目录,如果是则返回0,否则返回1 |
25 | hdfs dfs -text <path> | 指定的文件输出为文本格式,文件格式允许是zip和TextRecordInputStream。 |
hdfs dfs -mkdir /ied
-R
(必须大写)
解析:‘not empty’:目录非空
(1)名称起点启动时,进入安全模式,直到fsimage用edits更新完毕才退出安全模式
(2)当文件块的副本数量少于设置的副本数量,会进入安全模式,直到生成符合要求的副本数,才会退出安全模式。其实,也可以通过命令方式进入或退出安全模式。
- #!/bin/bash
-
- JAVA_HOME=/usr/local/jdk1.8.0_231
- export JRE_HOME=${JAVA_HOME}/jre
- export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
- export PATH=${JAVA_HOME}/bin:$PATH
- export HADOOP_HOME=/usr/local/hadoop-3.3.4/
- export PATH=${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:$PATH
- #日志文件存放的目录,需手动创建
- log_src_dir=/export/data/logs/log/
- #待上传文件存放的目录,需手动创建
- log_toupload_dir=/export/data/logs/toupload/
- #设置日期
- date1=`date +%Y_%m_%d`
- #日志文件上传到hdfs的根路径
- hdfs_root_dir=/data/clickLog/$date1/
- #打印环境变量信息
- echo "envs: hadoop_home: $HADOOP_HOME"
- #读取日志文件的目录,判断是否有需要上传的文件
- echo "log_src_dir: $log_src_dir"
- ls $log_src_dir | while read fileName
- do
- if [[ "$fileName" == access.log.* ]]; then
- date=`date +%Y_%m_%d_%H_%M_%S`
- #将文件移动到待上传目录并重命名
- echo "moving $log_src_dir$fileName to $log_toupload_dir"lzy_click_log_$fileName"$date"
- mv $log_src_dir$fileName $log_toupload_dir"lzy_click_log_$fileName"$date
- #将待上传的文件path写入一个列表文件willDoing,
- echo $log_toupload_dir"lzy_click_log_$fileName"$date >> $log_toupload_dir"willDoing."$date
- fi
- done
- #找到列表文件willDoing
- ls $log_toupload_dir | grep will | grep -v "_COPY_" | grep -v "_DONE_" | while read line
- do
- #打印信息
- echo "toupload is in file: $line"
- #将待上传文件列表willDoing改名为willDoing_COPY_
- mv $log_toupload_dir$line $log_toupload_dir$line"_COPY_"
- #读列表文件willDoing_COPY_的内容(一个一个的待上传文件名)
- #此处的line 就是列表中的一个待上传文件的path
- cat $log_toupload_dir$line"_COPY_" | while read line
- do
- #打印信息
- echo "puting...$line to hdfs path...$hdfs_root_dir"
- hdfs dfs -mkdir -p $hdfs_root_dir
- hdfs dfs -put $line $hdfs_root_dir
- done
- mv $log_toupload_dir$line"_COPY_" $log_toupload_dir$line"_DONE_"
- done
![](https://csdnimg.cn/release/blogv2/dist/pc/img/newCodeMoreWhite.png)
本章节,到此结束!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。