Hadoop常用Shell指令与常见问题

Hadoop常用Shell指令与常见问题

常用指令:

文件列表:

hadoop fs -ls path

递归文件列表

hadoop fs -lsr path

建立文件夹

hadoop fs -mkdir path

删除

hadoop fs -rm URI

版本号

hadoop version

问题 1

hadoop dfs -ls

报错:

WARNING: Use of this script to execute dfs is deprecated.
WARNING: Attempting to execute replacement "hdfs dfs" instead.

2019-07-23 11:18:43,174 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
ls: `.': No such file or directory

说没有文件或者路径。原因在于上面的命令,或者 hdfs dfs -ls 实际上会自动添加路径,运行上面的指令,相当于运行:

hdfs dfs -ls [/home/usernamexxx]

这样一条指令。由于没有创建主目录,所以会报错没有文件和路径。可以采用这种方法:

hdfs dfs -ls /

就不会报错了。

在hadoop上建立自己的文件夹:

hdfs dfs -mkdir -p /myhd/hdusr

其中,mkdir -p指的是如果上级目录不存在,则自动创建。比如这里的myhd如果不存在,那么自动创建myhd后再在其中生成子目录hdusr。

这样,利用ls命令,就可以看到了

baidudeMacBook-Pro:~ mynm$ hdfs dfs -ls /
2019-07-23 11:43:12,207 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Found 1 items
drwxr-xr-x   - mynm supergroup          0 2019-07-23 11:36 /hdusr