小言_互联网的博客

Hadoop命令大全

459人阅读  评论(0)

HDFS分布式文件系统 , 将一个大的文件拆分成多个小文件存储在多台服务器中


文件系统: 目录结构(树状结构)  "/" 树根,   目录结构在namenode中维护

目录

1.查看当前目录

2.创建多级目录

3.上传文件

4.查看文件

4.hdfs中移动文件

​编辑 5.下载文件

6.删除文件

7.查看文件大小

8.删除目录

9.常用命令

9.1. hdfs文件系统命令

9.2. 运维命令

9.3. mapreduce命令

9.4. hdfs系统检查工具fsck

9.5. 运行pipies作业


1.查看当前目录


  
  1. # hdfs dfs -ls /
  2. Found 2 items
  3. drwxr-xr-x - yunwei supergroup 0 2023-02-24 14:39 /hbase
  4. drwxr-xr-x - yunwei supergroup 0 2023-02-24 14:55 /usr

2.创建多级目录

hdfs dfs -mkdir /hadoop

hdfs dfs -mkdir -p /test/a

hdfs dfs -ls /test     查看文件,ls 。没有cd命令, 需要指绝对路径


  
  1. # hdfs dfs -mkdir -p /test/a
  2. # hdfs dfs -ls /
  3. Found 2 items
  4. drwxr-xr-x - yunwei supergroup 0 2023-02-24 14:39 /hbase
  5. drwxr-xr-x - yunwei supergroup 0 2023-02-24 17:14 /test
  6. # hdfs dfs -ls /test
  7. Found 1 items
  8. drwxr-xr-x - yunwei supergroup 0 2023-02-24 17:14 /test/a

3.上传文件

就已经能看出来了

-copyFromLocal  将本地的文件复制到hdfs的分布式系统中

-put 将本地文件复制到hdfs系统中,可以给文件重命名,本地原文件还存在

-moveFromLocal 将文件复制到hdfs中,本地文件已不存在


  
  1. # hdfs dfs -copyFromLocal hello-hadoop.txt /test/
  2. # hdfs dfs -lsr /test
  3. lsr: DEPRECATED: Please use 'ls -R' instead.
  4. drwxr-xr-x - yunwei supergroup 0 2023-02-24 17:14 /test/a
  5. -rw-r--r-- 2 yunwei supergroup 51 2023-02-24 17:21 /test/hello-hadoop.txt
  6. # hdfs dfs -put hello-hadoop.txt /test/a.txt
  7. # hdfs dfs -lsr /test
  8. lsr: DEPRECATED: Please use 'ls -R' instead.
  9. drwxr-xr-x - yunwei supergroup 0 2023-02-24 17:14 /test/a
  10. -rw-r--r-- 2 yunwei supergroup 51 2023-02-24 17:23 /test/a.txt
  11. -rw-r--r-- 2 yunwei supergroup 51 2023-02-24 17:21 /test/hello-hadoop.txt
  12. # hdfs dfs -moveFromLocal hello-hadoop.txt /test/b.txt
  13. # hdfs dfs -lsr /test
  14. lsr: DEPRECATED: Please use 'ls -R' instead.
  15. drwxr-xr-x - yunwei supergroup 0 2023-02-24 17:14 /test/a
  16. -rw-r--r-- 2 yunwei supergroup 51 2023-02-24 17:23 /test/a.txt
  17. -rw-r--r-- 2 yunwei supergroup 51 2023-02-24 17:25 /test/b.txt
  18. -rw-r--r-- 2 yunwei supergroup 51 2023-02-24 17:21 /test/hello-hadoop.txt

4.查看文件

当知道文件内容小的时候,可以用-cat,

文件内容很大时,可以用-tail -f,文件就会一直在文件末尾,有信息时,随时展示


  
  1. # hdfs dfs -cat /test/a.txt
  2. name:china
  3. local:beijing
  4. time:now
  5. say:hello hadoop
  6. #
  7. # hdfs dfs -tail -f /test/a.txt
  8. name:china
  9. local:beijing
  10. time:now
  11. say:hello hadoop

4.hdfs中移动文件


  
  1. # hdfs dfs -mv /test/a.txt /test/aa.txt
  2. # hdfs dfs -lsr /test
  3. lsr: DEPRECATED: Please use 'ls -R' instead.
  4. drwxr-xr-x - yunwei supergroup 0 2023-02-24 17:14 /test/a
  5. -rw-r--r-- 2 yunwei supergroup 51 2023-02-24 17:23 /test/aa.txt
  6. -rw-r--r-- 2 yunwei supergroup 51 2023-02-24 17:25 /test/b.txt
  7. -rw-r--r-- 2 yunwei supergroup 51 2023-02-24 17:21 /test/hello-hadoop.txt

 5.下载文件


  
  1. # hdfs dfs -get /test/b.txt
  2. # ll
  3. total 4
  4. -rw-r--r-- 1 yunwei yunwei 51 Feb 24 17:34 b.txt

6.删除文件


  
  1. # hdfs dfs -rm r /test/aa.txt
  2. rm: `r ': No such file or directory
  3. 23/02/24 17:41:19 INFO fs.TrashPolicyDefault: Namenode trash configuration: Deletion interval = 0 minutes, Emptier interval = 0 minutes.
  4. Deleted /test/aa.txt
  5. #
  6. # hdfs dfs -lsr /test
  7. lsr: DEPRECATED: Please use ' ls -R ' instead.
  8. drwxr-xr-x - yunwei supergroup 0 2023-02-24 17:14 /test/a
  9. -rw-r--r-- 2 yunwei supergroup 51 2023-02-24 17:25 /test/b.txt
  10. -rw-r--r-- 2 yunwei supergroup 51 2023-02-24 17:21 /test/hello-hadoop.txt

7.查看文件大小


  
  1. # hdfs dfs -du -h /test
  2. 0 /test/a
  3. 51 /test/b.txt
  4. 51 /test/hello-hadoop.txt

8.删除目录


  
  1. # hdfs dfs -rmr /usr
  2. rmr: DEPRECATED: Please use 'rm -r' instead.
  3. 23 / 02 / 24 16: 39: 51 INFO fs.TrashPolicyDefault: Namenode trash configuration: Deletion interval = 0 minutes, Emptier interval = 0 minutes.
  4. Deleted /usr
  5. # hdfs dfs -ls /
  6. Found 1 items
  7. drwxr-xr-x - yunwei supergroup 0 2023- 02- 24 14: 39 /hbase

9.常用命令

9.1. hdfs文件系统命令


hdfs dfs -mkdir dir 创建文件夹

hdfs dfs -rmr dir 删除文件夹dir

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

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

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

9.1.2 空间大小查看系列命令:
hdfs dfs -du -h dir 按照适合阅读的形式人性化显示文件大小

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

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

9.1.3 权限管理类:
hdfs dfs -chgrp group path 改变文件所属组

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

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

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

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

9.1.4 文件操作(上传下载复制)系列:
hdfs dfs -touchz a.txt 创建长度为0的空文件a.txt

hdfs dfs -rm file 删除文件file

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

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

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

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

hdfs dfs -cat file 查看文件file

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

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

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

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

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

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

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

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

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

9.1.6 系统功能管理类:
hdfs dfs -expunge 清空回收站

hdfs dfsadmin -safemode enter 进入安全模式

hdfs dfsadmin -sfaemode leave 离开安全模式

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

hdfs dfsadmin -finalizeUpgrade 终结升级操作

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

hdfs version 查看hdfs版本

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

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

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

9.2. 运维命令

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

stop-dfs.sh 关闭文件系统

start-yarn.sh 启动resourcemanager,nodemanager

stop-yarn.sh 关闭resourcemanager,nodemanager

start-all.sh 启动hdfs,yarn

stop-all.sh 关闭hdfs,yarn

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

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

hdfs namenode -format 格式化文件系统

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

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

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

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

9.3. mapreduce命令

hdfs jar file.jar 执行jar包程序

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

hdfs job -submit 提交作业

hdfs job -status 打印map和reduce完成百分比和所有计数器。

hdfs job -counter 打印计数器的值。

hdfs job -kill 杀死指定作业。

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

hdfs job -history [all]

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

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

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

hdfs job -fail -task 使任务失败。被失败的任务会对失败尝试不利。

9.4. hdfs系统检查工具fsck

hdfs fsck -move 移动受损文件到/lost+found

hdfs fsck -delete 删除受损文件。

hdfs fsck -openforwrite 打印出写打开的文件。

hdfs fsck -files 打印出正被检查的文件。

hdfs fsck -blocks 打印出块信息报告。

hdfs fsck -locations 打印出每个块的位置信息。

hdfs fsck -racks 打印出data-node的网络拓扑结构。

9.5. 运行pipies作业

hdfs pipes -conf 作业的配置

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

hdfs pipes -input 输入目录

hdfs pipes -output 输出目录

hdfs pipes -jar Jar文件名

hdfs pipes -inputformat InputFormat类

hdfs pipes -map Java Map类

hdfs pipes -partitioner Java Partitioner

hdfs pipes -reduce Java Reduce类

hdfs pipes -writer Java RecordWriter

hdfs pipes -program 可执行程序的URI

hdfs pipes -reduces reduce个数
 


转载:https://blog.csdn.net/red_sky_blue/article/details/129203831
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场