zoukankan      html  css  js  c++  java
  • hadoop文件系统常用操作

    详细可参考hadoop官方文档filesystem shell一节

    使用hadoop离不开文件系统,比如hdfs,我们可能需要从hdfs中读取文件作为输入,并将输出保存到hdfs上某个文件中

    首先创建一个目录

    bin> ./hadoop fs -mkdir /user/root

    这样就在根目录 "/" 下创建了一个目录user,并在user目录下创建一个子目录root,对应用户名root,注意这里的根目录 "/" 与linux中文件系统的根目录不同,这里的根目录全部地址应该是 "hdfs://cluster-main:9000/",(假设cluster-main为hadoop集群主节点的host名,9000为hdfs对应端口),故目录 "/user/root" 的地址为 "hdfs://cluster-main:9000/user/root"。另外,如果要读取linux本地文件,则需要写全路径scheme为file,比如 "file:///file3",表示本地文件 "/file3"

    如果删除root子目录则可以执行

    bin> ./hadoop fs -rmdir /user/root

    如果要删除 /user目录,即,递归删除/user的子目录和文件,由于这里 rmdir是作为 ./hadoop fs 的选项, /user作为参数,故无法像linux文件系统那样给rm命令添加 -rf选项,事实上,在hadoop中采用一个新的选项,如下

    bin> ./hadoop fs -rmr /user

    如果本地有一个文件,那我们可以将其推送到hdfs中,比如/user/root/目录下

    bin> ./hadoop fs -put localfile /user/root/hadoopfile

    相反地,如果要将hdfs中的文件下载到本地,则可以执行

    bin> ./hadoop fs -get /user/root/file localfile

    而将hdfs的文件复制到hdfs另一个路径,则与linux本地的cp类似

    bin> ./hadoop fs -cp /user/root/file1 /user/root/file2
  • 相关阅读:
    EasyARM-Linux工具
    EasyARM-Linux文件系统
    EasyARM-Linux使用
    公差-PCBA
    novoton-USBDevice使用
    novoton-RTC使用
    novoton-ADC使用
    novoton-I2C使用
    novoton-timer使用
    novoton-usart使用
  • 原文地址:https://www.cnblogs.com/sjjsxl/p/6734728.html
Copyright © 2011-2022 走看看