HDFS-Shell

    xiaoxiao2026-05-06  11

    一.hadoop 命令 Shell命令 Hadoop包括一系列的类shell的命令,可直接和HDFS以及其他Hadoop支持的文件系统进行交互。bin/hadoop fs -help 命令列出所有Hadoop Shell支持的命令。而 bin/hadoop fs -help command-name 命令能显示关于某个命令的详细信息。这些命令支持大多数普通文件系统的操作,比如复制文件、改变文件权限等。它还支持一些HDFS特有的操作,比如改变文件副本数目。 查看某个命令下某些子命令的使用方法 二.Hadoop fs命令相关操作 命令都要在这个目录下才能执行 /home/gaojunyu/app/hadoop-2.6.0 1.上传文件到HDFS 用户根目下的文件~/app/jdk-8u65-linux-x64.tar.gz 上传到HDFS的根目录/ [gaojunyu@gaojunyu hadoop-2.6.0]$ bin/hadoop fs -put ~/app/jdk-8u65-linux-x64.tar.gz / core-site.xml文件上传到HDFS的根目录 [gaojunyu@gaojunyu hadoop-2.6.0]$ bin/hadoop fs -put ~/core-site.xml / bin/hadoopfs -copyFromLocal ~/jdk-8u65-linux-x64.tar.gz / -copyFromLocal命令和put作用相同,都是上传 2.浏览HDFS 浏览HDFS文件系统某个目录内容 [gaojunyu@gaojunyu hadoop-2.6.0]$ bin/hadoop fs -ls / 3.创建目录 bin/hadoopfs -mkdir /test  -- 在根目录下创建 test 子目录 bin/hadoopfs -mkdir -p /test/hadoop/hbase  -- 一次性创建多级目录 4.下载 从HDFS下载文件到当前系统 [gaojunyu@gaojunyu hadoop-2.6.0]$ bin/hadoop fs -get /jdk-8u65-linux-x64.tar.gz ~/Desktop 下载jdk-8u65-linux-x64.tar.gz到用户目录的Desktop目录下 bin/hadoopfs -copyToLocal /jdk-8u65-linux-x64.tar.gz ~/Desktop - copyToLocal和get作用一样 网页查看一下 子目录查看 5 删除       删除目录 bin/hadoopfs -rmdir /test  -- 删除非空目录      删除文件 bin/hadoopfs-rm /core-site.xml -- 删除文件 递归删除 bin/hadoopfs -rm-r /core-site.xml  -- 删除文件 6 查看文件的内容       bin/hadoop fs -cat /core-site.xml  -- 删除非空目录   sbin/start-all.sh 该命令会把整个集群进行启动,但是如果有一个节点的某个进程挂了。一个 NameNode 进程挂了,一个 DataNode 进行挂了   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 为了方便操作,不必须进入路径输入bin/hadoop 配置hadoop命令 1. 修改etc/profile文件 在文件末尾加上 HADOOP_HOME=/home/gaojunyu/app/hadoop-2.6.0 export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH 保存并退出; 2.使配置文件生效 [root@gaojunyu gaojunyu]# source /etc/profile 3.检验是否生效 新连接一个SSH 输入[gaojunyu@gaojunyu ~]$ echo $HADOOP_HOME 看是否能输出 路径信息 然后再测试一下直接使用hadoop命令 //查看HDFS根目录下的文件信息 输入[gaojunyu@gaojunyu ~]$ hadoop fs -ls / 结果如下图则,hadoop命令配置成功 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 单独启动一个 namenode 进程       nohup bin/hdfsnamenode & 具体详见Hadoop启动文档
    最新回复(0)