hadoop命令大全

发布于:2024-06-04 ⋅ 阅读:(111) ⋅ 点赞:(0)

1、hdfs文件系统命令

1.1、文件夹操作命令

#创建文件夹
hdfs dfs -mkdir dir  

#删除文件夹dir
hdfs dfs -rmr dir 

#查看目录文件信息
hdfs dfs -ls  

#递归查看文件目录信息
hdfs dfs -lsr  

#返回指定路径的信息
hdfs dfs -stat path 


1.2、文件操作相关命令

#创建长度为0的空文件a.txt
hdfs dfs -touchz a.txt 

#删除文件file
hdfs dfs -rm file   

#向dir文件上传file文件
hdfs dfs -put file dir  

#向dir上传文件filea并且把filea改名为fileb
hdfs dfs -put filea dir/fileb 

#下载file到本地文件夹
hdfs dfs -get file dir  

#把hdfs里面的多个文件合并成一个文件,合并后文件位于本地系统
hdfs dfs -getmerge hdfs://Master:9000/data/SogouResult.txt CombinedResult  

#查看文件file
hdfs dfs -cat file   

#如果文件是文本格式,相当于cat,如果文件是压缩格式,则会先解压,再查看
hdfs fs -text /dir/a.txt  

#查看dir目录下面a.txt文件的最后1000字节
hdfs fs -tail /dir/a.txt

#从本地复制文件
hdfs dfs -copyFromLocal localsrc path 

#从hdfs拷贝到本地
hdfs dfs -copyToLocal /hdfs/a.txt /local/a.txt  

#把文件从原路径拷贝到目标路径
hdfs dfs -copyFromLocal /dir/source /dir/target  

#把文件从a目录移动到b目录,可用于回收站恢复文件
hdfs dfs -mv /path/a.txt /path/b.txt 

1.3、空间大小查看命令

#按照适合阅读的形式人性化显示文件大小
hdfs dfs -du -h dir 

#递归显示目标文件的大小
hdfs dfs -dus uri  

#显示目标文件file的大小
hdfs dfs -du path/file

1.4、权限管理相关命令

#改变文件所属组
hdfs dfs -chgrp  group path 

#递归更改dir目录的所属组
hdfs dfs -chgrp -R /dir  

#改变文件的权限
hdfs dfs -chmod [-R] 权限 -path  

#改变文件的所有者
hdfs dfs -chown owner[-group] /dir 

#递归更改dir目录的所属用户
hdfs dfs -chown -R  owner[-group] /dir  

1.5、判断目录及文件相关命令

#判断文件是否存在,正0负1
hdfs fs -test -e /dir/a.txt 

#判断dir是否为目录,正0负1
hdfs fs -test -d /dir

#判断文件是否为空,正0负1
hdfs fs -test -z /dir/a.txt

1.6、系统检查工具相关命令

#移动受损文件到/lost+found
hdfs fsck <path> -move    

#删除受损文件
hdfs fsck <path> -delete   

#打印出写打开的文件
hdfs fsck <path> -openforwrite   

#打印出正被检查的文件
hdfs fsck <path> -files     

#打印出块信息报告
hdfs fsck <path> -blocks     

#打印出每个块的位置信息
hdfs fsck <path> -locations     

#打印出data-node的网络拓扑结构
hdfs fsck <path> -racks    

1.7、文件系统管理相关命令

#清空回收站
hdfs dfs -expunge 

#进入安全模式
hdfs dfsadmin -safemode enter 

#离开安全模式
hdfs dfsadmin -sfaemode leave 

#关闭某个datanode节点
hdfs dfsadmin -decommission datanodename 

#终结升级操作
hdfs dfsadmin -finalizeUpgrade 

#查看升级操作状态
hdfs dfsadmin -upgradeProcess status 

#查看hdfs版本
hdfs version 

#打印运行在<host:port>的守护进程的日志级别
hdfs daemonlog -getlevel <host:port> <name>  

#设置运行在<host:port>的守护进程的日志级别
hdfs daemonlog -setlevel <host:port> <name> <level>  

#设置文件的副本数
hdfs dfs -setrep -w 副本数 -R path 

2、集群运维相关命令

#启动namenode,datanode,启动文件系统
start-dfs.sh   

#关闭文件系统
stop-dfs.sh   

#启动resourcemanager,nodemanager
start-yarn.sh  

#关闭resourcemanager,nodemanager
stop-yarn.sh  

#启动hdfs,yarn
start-all.sh    

#关闭hdfs,yarn
stop-all.sh    

#单独启动datanode
hdfs-daemon.sh start datanode  

#启动负载均衡,尽量不要在namenode节点使用
start-balancer.sh -t 10% 

#格式化文件系统
hdfs namenode -format  

#分发新的hdfs版本之后,namenode应以upgrade选项启动
hdfs namenode -upgrade  

#将namenode回滚到前一版本,这个选项要在停止集群,分发老的hdfs版本之后执行
hdfs namenode -rollback  

#finalize会删除文件系统的前一状态。最近的升级会被持久化,rollback选项将再不可用,升级终结操作之后,它会停掉namenode,分发老的hdfs版本后使用
hdfs namenode -finalize  

#从检查点目录装载镜像并保存到当前检查点目录,检查点目录由fs.checkpoint.dir指定
hdfs namenode importCheckpoint 

3、作业管理相关命令

#执行jar包程序
hdfs jar file.jar 

#杀死正在执行的jar包程序
hdfs job -kill job_201005310937_0053  

#提交作业
hdfs job -submit <job-file>  

#打印map和reduce完成百分比和所有计数器
hdfs job -status <job-id>   

#打印计数器的值
hdfs job -counter <job-id> <group-name> <counter-name>  

#杀死指定作业
hdfs job -kill <job-id>  

#打印给定范围内jobtracker接收到的事件细节
hdfs job -events <job-id> <from-event-#> <#-of-events> 

#
hdfs job -history [all] <jobOutputDir>     

#打印作业的细节、失败及被杀死原因的细节。更多的关于一个作业的细节比如成功的任务,做过的任务尝试等信息可以通过指定[all]选项查看
hdfs job -history <jobOutputDir> 

#显示所有作业。-list只显示将要完成的作业
hdfs job -list [all]  

#杀死任务。被杀死的任务不会不利于失败尝试
hdfs job -kill -task <task-id>   

#使任务失败。被失败的任务会对失败尝试不利
hdfs job -fail -task <task-id>   
#查看作业配置
hdfs pipes -conf <path> 

#增加/覆盖作业的配置项
hdfs pipes -jobconf <key=value>, <key=value>, ...  

#指定作业输入目录
hdfs pipes -input <path>  

#指定作业输出目录
hdfs pipes -output <path>

#运行指定作业
hdfs pipes -jar <jar file> 

#指定自定义的输入格式类(InputFormat)
hdfs pipes -inputformat <class> -jar example.jar

#指定自定义的map处理类
hdfs pipes -map <class> -jar example.jar

#指定自定义的分区器
hdfs pipes -partitioner <class> -jar example.jar

#指定自定义的reduce处理类
hdfs pipes -reduce <class> -jar example.jar

#指定自定义的writer类
hdfs pipes -writer <class> -jar example.jar

#用于指定要执行的可执行程序
hdfs pipes -program <executable> 可执行程序的URI

#用于指定 Hadoop Pipes作业的reduce任务数
hdfs pipes -reduces <num> reduce个数


网站公告

今日签到

点亮在社区的每一天
去签到