Hadoop常用的操作命令

HDFS系统的常用操作命令,若没有配置Hadoop的系统PATH变量,则需要进入到$HADOOP_HOME/bin 目录中执行.

1. ls

使用ls命令可以查看HDFS系统中的目录和文件。例如,查看HDFS文件系统根目录下的目录和文件,命令如下:

$ hadoop fs  -ls /

递归列出HDFS文件系统根目录下的所有目录和文件,命令如下:

$ hadoop fs  -ls -R /

上述命令中的hadoop fs 为操作HDFS系统的命令前缀,不可省略。该前缀也可以使用hdfs dfs代替。

2. put

使用put命令可以将本地文件上传到HDFS系统中.例如: 将本地当前目录文件a.txt上传到HDFS文件系统根目录的input文件夹,命令如下:

$ hadoop fs -put a.txt   /input/

3. moveFromLocal

使用moveFromLocal命令可以将本地文件移动到HDFS文件系统中,也可以一次移动多个文件。/ 与put命令类似,不同的是,该命令执行后源文件将被删除。例如.将本地文件a.txt移动到HDFS根目录的input文件夹中,命令如下:

 $ hadoop fs   -moveFromLocal  a.txt   /input/  

4. get

使用get命令可以将HDFS文件系统中文件下载到本地,注意下载时的文件名不能与本地文件相同,否则会提示文件已经存在.。下载多个文件或目录到本地时,要将本地路径设置为文件夹。例如: 将HDFS根目录的input文件夹中的文件a.txt下载到本地当前目录,命令如下:

$ hadoop fs  -get  /input/a.txt  ./

将HDFS根目录的input文件夹下载到本地当前目录,命令如下:

$ hadoop fs  -get /input/  ./

需要注意的是,需要确保用户对当前目录有写权限.

5. rm

使用rm命令可以删除HDFS系统中的文件或者文件夹,每次可以删除多个文件或者目录,例如,删除HDFS根目录的input文件夹中的文件a.txt,命令如下:

$ hadoop  fs -rm   /input/a.txt

递归删除HDFS根目录的output文件夹及该文件夹下的所有内容.。命令如下:

$ hadoop fs    -rm   -r   /output

6.  mkdir 

使用mkdir命令可以 在HDFS系统中创建文件或目录。例如,在HDFS根目录下创建文件夹input , 命令如下:

$ hadoop  fs  -mkdir  /input/

也可以使用-p 参数创建多级目录,如果父目录不存在,则会自动创建父目录,命令如下:

$ hadoop  fs  -mkdir  -p   /input/file

(7) cp

使用cp命令可以复制HDFS中的文件到另一个文件,相当于给文件重命名并保存,源文件已不存在。例如,将/input/a.txt复制到/input/b.txt,并保留a.txt。命令如下:

$ hadoop fs  -cp  /input/a.txt    /input/b.txt

(8) mv

使用mv命令可以移动HDFS文件到另外一个文件,相当于给文件重命名并保存, 源文件已不存在。例如,将/input/a.txt 移动到 /input/b.txt, 命令如下:

$ hadoop fs  -mv  /input/a.txt  /input/b.txt

(9) appendToFile

使用appendToFile命令可以将单个或多个文件的内容从本地系统追加到HDFS系统文件中,例如, 将本地当前目录的文件a.txt的内容追加到HDFS系统的/input/b.txt文件中,命令如下:

$ hadoop  fs  -appendToFile   a.txt   /input/b.txt

若需要一次追加多个本地系统文件的内容,则多个文件用"空格" 隔开。例如,将本地文件a.txt 和 b.txt的内容追加到HDFS系统的/input/c.txt文件中,命令如下:

$ hadoop  fs  -appendToFile  a.txt  b.txt   /input/c.txt

(10) cat

使用cat命令可以查看并输出HDFS系统中某个文件的所有内容。例如,查看HDFS系统中的文件/input/a.txt的所有内容,命令如下:

$ hadoop   fs   -cat  /input/a.txt 

也可以同时查看并输出HDFS中的多个文件内容。结果会将多个内容按照顺序合并输出。例如,查看HDFS中的文件/input/a.txt 和文件/input/b.txt的所有内容,命令如下:

$  hadoop   fs  -cat  /input/a.txt   /input/b.txt

                                                                                       注意

在使用HDFS命令操作文件时,HDFS中的文件或目录的路径必须写绝对路径,而本地系统的文件或者目录可以写相对路径。

 

 

  • 1
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值