一、linux

rm是删除,不是del

二、常用操作

package hdfs;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URI;
import java.net.URISyntaxException; import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils;
import org.junit.Before;
import org.junit.Test;
//那么多test,指向运行一个 那么选种方法明后 在junit public class HDFSDemo {
FileSystem fs = null; @Before
public void init() throws Exception { URI uri = new URI("hdfs://192.168.58.180:8020/");
Configuration conf=new Configuration();
//这个是抽象类
fs = FileSystem.get(uri, conf, "hxsyl");
}
@Test
public void downLoadHdfs() throws Exception {
fs.copyToLocalFile(new Path("/in/1.txt"),new Path("d:/TestHDFS/2.txt"));
}
@Test
public void delHDFS() throws Exception, Throwable {
//true表示地柜删除
boolean flag = fs.delete(new Path("/1.txt"), true);
System.out.println(flag); }
@Test
public void mkdirHDFS() throws Exception, Throwable {
boolean flag = fs.mkdirs(new Path("/testHDFS"));
System.out.println(flag);
} @Test
public void uploadHDFS() throws Exception {
//一般来说win下的用户和linux下用户不一样,根据hdfs的权限机智,无法写成功,
//要么dfs.permissions false 这样一般不行
//要常穿的hdfs dfs -chmod 777 主要是改了其他用户权限
//或者伪装成用户
InputStream is = new FileInputStream("d:/TestHDFS/1.txt");
//指向hdfs 不用new
OutputStream os = fs.create(new Path("/1.txt"));
IOUtils.copyBytes(is, os, 4096,true);
}
public static void main(String[] args) throws Exception{ FileSystem fs = null;
URI uri = new URI("hdfs://192.168.58.180:8020/");
Configuration conf=new Configuration();
//这个是抽象类
fs = FileSystem.get(uri, conf); // TODO Auto-generated method stub //没有类似的get方法
//虽然这个文件存在 也要new
Path path = new Path("/Movielens1M/movies.dat");
InputStream is = fs.open(path);
//必须写到文件 否则
//java.io.FileNotFoundException: E:\AAA(拒绝访问。)
OutputStream os = new FileOutputStream("D:\\TestHDFS\\1.txt");
//拷贝完成关闭 默认的buffer都是4096
IOUtils.copyBytes(is, os, 4096, true); } }

  上传下载除了输出输出流意外,然后IOUtils.copyBytes;就是用fs自带的方法。

Hdfs常用操作的更多相关文章

  1. Hadoop2.7.6_02_HDFS常用操作

    1. HDFS常用操作 1.1. 查询 1.1.1.  浏览器查询 1.1.2. 命令行查询 [yun@mini04 bin]$ hadoop fs -ls / 1.2. 上传文件 [yun@mini ...

  2. Hadoop HDFS文件常用操作及注意事项

    Hadoop HDFS文件常用操作及注意事项 1.Copy a file from the local file system to HDFS The srcFile variable needs t ...

  3. [b0014] HDFS 常用JAVA 操作实战

    目的: 学习用java进行的常用hdfs操作 参考: [b0002] Hadoop HDFS cmd常用命令练手 环境: hadoop2.6.4 win7 下的eclipse环境调试已经配置好,参考前 ...

  4. Hadoop之HDFS文件操作常有两种方式(转载)

    摘要:Hadoop之HDFS文件操作常有两种方式,命令行方式和JavaAPI方式.本文介绍如何利用这两种方式对HDFS文件进行操作. 关键词:HDFS文件    命令行     Java API HD ...

  5. HDFS常用命令

    HDFS 常用的文件操作命令 hdfs dfs -text /pub/20151019/1/4/gwmvod/mediags.moretv.com.cn/*.bz2 | wc -l  hdfs dfs ...

  6. Hadoop常用操作

    Hadoop常用操作 1.Hadoop安装 略 2.Hadoop配置 略 3.Hadoop多目录配置 namenode和datanode节点下都可以进行多个目录的配置,但是意义不同.namenode的 ...

  7. HDFS文件操作(命令行)

    HDFS是一种分布式文件系统,为MapReduce这种框架下的海量数据分布式处理而设计. Hadoop之HDFS文件操作常有两种方式,一种是命令行方式,即Hadoop提供了一套与Linux文件命令类似 ...

  8. 【三】用Markdown写blog的常用操作

    本系列有五篇:分别是 [一]Ubuntu14.04+Jekyll+Github Pages搭建静态博客:主要是安装方面 [二]jekyll 的使用 :主要是jekyll的配置 [三]Markdown+ ...

  9. php模拟数据库常用操作效果

    test.php <?php header("Content-type:text/html;charset='utf8'"); error_reporting(E_ALL); ...

随机推荐

  1. ES6 数组解构赋值

    .数组解构 let [a, b, c,d] = ["aa", "bb", 77,88]; alert(a) //弹出aa 可以用babel 解析看ES5的转换结 ...

  2. PAT 1027. 打印沙漏(20)

    本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个"*",要求按下列格式打印 ***** *** * *** ***** 所谓"沙漏形状",是指每行 ...

  3. 夯实基础之php学习-1基础篇

    1,单引号和双引号的区别 单引号表示字符串,双引号能解析字符串中的变量,所以,如果没有变量,尽量用单引号,加快解析速度 当字符串需要单引号或者双引号的时候,可以用转义字符代替 2,类型转换 通过(bo ...

  4. python处理经过gzip压缩的网页内容

    Python在进行网页抓取时,有时会获取到经过gzip压缩后的数据(体积小,传输快),导致无法阅读和使用. 如图所示,为http原始报文.可以看到,header区域的“Content-Encoding ...

  5. 3098: Hash Killer II

    3098: Hash Killer II Time Limit: 5 Sec  Memory Limit: 128 MBSec  Special JudgeSubmit: 1219  Solved:  ...

  6. 将数据库备份到AZURE blob storage

    1创建一个Storage Account 1)点击Browse->Storage accounts 2) 填写Storage account,请记住这个名字,之后创建credential需要用到 ...

  7. Hangfire项目实践

    Hangfire项目实践分享 Hangfire项目实践分享 目录 Hangfire项目实践分享 目录 什么是Hangfire Hangfire基础 基于队列的任务处理(Fire-and-forget ...

  8. codevs1842 递归第一次

    难度等级:白银 1842 递归第一次 题目描述 Description 同学们在做题时常遇到这种函数 f(x)=5 (x>=0) f(x)=f(x+1)+f(x+2)+1 (x<0) 下面 ...

  9. java动态代理浅析

    最近在公司看到了mybatis与spring整合中MapperScannerConfigurer的使用,该类通过反向代理自动生成基于接口的动态代理类. 于是想起了java的动态代理,然后就有了这篇文章 ...

  10. MySql 中文乱码排查解决方案

    MySQL会出现中文乱码的原因不外乎下列几点: server本身设定问题,例如还停留在latin1 table的语系设定问题(包含character与collation) 客户端程式(例如php)的连 ...