HDFS-命令行相关
- ls 列出目录
- mkdir 创建目录
- put 上传文件
- cp复制
- mv移动
- appendToFile内容追加
- cat
ls 列出目录
hadoop fs -ls 需要查看的文件目录
如
hadoop fs -ls /
mkdir 创建目录
hadoop fs -mkdir 需要创建的文件的路径
hadoop fs -mkdir /test/
也可以使用 -p 参数创建多级目录,如果父目录不存在,则会自动创建,命令如下:
hadoop fs -mkdir -p 需要创建的多级目录路径
hadoop fs -mkdir -p /output/file
put 上传文件
使用 put 命令可以将本地文件上传到HDFS系统中
hadoop fs -put 需要上传的文件地址 上传到HDFS的文件地址
hadoop fs -put ~/a.txt /
cp复制
使用 cp 命令可以复制HDFS中的文件到另一个文件,在移动的过程中可以给文件重命名。此时源文件还存在(类似于复制),例如将文件 /input/a.txt 文件移动到 /input/b.txt,命令如下
hadoop fs -cp 源文件的路径 移动后的路径及名称
hadoop fs -cp /input/a.txt /input/b.txt
mv移动
使用 mv 命令可以复制HDFS中的文件到另一个文件,在移动的过程中可以给文件重命名。此时源文件不存在(类似于剪切),例如将文件 /input/a.txt 文件移动到 /input/b.txt,命令如下
hadoop fs -mv 源文件的路径 移动后的路径及名称
hadoop fs -mv /input/a.txt /input/b.txt
appendToFile内容追加
使用 appendToFile 命令可以将单个或者多个文件的内容追加到HDFS系统的文件中。例如,将本地当前目录的 a.txt 文件的内容追加到HDFS系统中 /input/b.txt 文件中,命令如下:
hadoop fs -appendToFile 需要加入的内容文件路径 被追加内容的文件路径
hadoop fs -appendToFile a.txt /input/b.txt
如果需要一次性追加多个本地文件的内容,则多个文件用 空格 隔开,例如,将本地文件 a.txt 和 b.txt 内容追加到HDFS系统文件的 /input/c.txt 文件中,命令如下:
hadoop fs -appendTofile 文件1 文件2 文件3 ... HDFS系统中被追加的文件
hadoop fs -appendTofile a.txt b.txt /input/c.txt
cat
使用 cat 命令可以查看并输出HDFS系统中某个文件的所有内容。例如,查看HDFS系统中的文件 /input/a.txt 的所有内容。命令如下:
hadoop fs -cat 需要查看的文件路径
hadoop fs -cat /input/a.txt
也可以同时查看并输出HDFS中的多个文件内容,使用空格隔开即可,结果会将多个文件的内容按照顺序合并输出。例如,查看HDFS中的文件 /input/a.txt 和文件 /input/b.txt,命令如下:
hadoop fs -cat 需要查看的文件路径1 需要查看的文件路径2 ...