wake-up-neo.net

So navigieren Sie durch Verzeichnisse in Hadoop HDFS

Ich möchte in HDFS navigieren

Zuerst habe ich mir die Verzeichnisse in "root" HDFS angesehen

[[email protected] ~]$ Sudo -u hdfs hadoop fs -ls hdfs:/
Found 5 items
drwxr-xr-x   - hbase hbase               0 2015-10-10 07:03 hdfs:///hbase
drwxr-xr-x   - solr  solr                0 2014-06-01 16:16 hdfs:///solr
drwxrwxrwx   - hdfs  supergroup          0 2015-10-08 11:45 hdfs:///tmp
drwxr-xr-x   - hdfs  supergroup          0 2015-04-13 08:26 hdfs:///user
drwxr-xr-x   - hdfs  supergroup          0 2014-06-01 16:15 hdfs:///var

dann habe ich versucht, einen von ihnen einzugeben

[[email protected] ~]$ Sudo -u hdfs hadoop -cd hdfs:///hbase
Error: No command named `-cd' was found. Perhaps you meant `hadoop cd'

versuchen auch "hadoop cd" funktionieren nicht

[[email protected] ~]$ Sudo -u hdfs hadoop cd hdfs:///hbase
Exception in thread "main" Java.lang.NoClassDefFoundError: cd
Caused by: Java.lang.ClassNotFoundException: cd
    at Java.net.URLClassLoader$1.run(URLClassLoader.Java:202)
    at Java.security.AccessController.doPrivileged(Native Method)
    at Java.net.URLClassLoader.findClass(URLClassLoader.Java:190)
    at Java.lang.ClassLoader.loadClass(ClassLoader.Java:306)
    at Sun.misc.Launcher$AppClassLoader.loadClass(Launcher.Java:301)
    at Java.lang.ClassLoader.loadClass(ClassLoader.Java:247)
Could not find the main class: cd.  Program will exit.

Bieten Sie nicht an, -ls -R (rekursiv) zu verwenden, um alle Dateien anzuzeigen.

Ich möchte mit Befehlen wie cd navigieren können

11
2Big2BeSmall

Es gibt keinen Befehl cd (Verzeichnis wechseln) im HDFS-Dateisystem. Sie können nur die Verzeichnisse auflisten und zum Erreichen des nächsten Verzeichnisses verwenden.

Sie müssen manuell navigieren, indem Sie den vollständigen Pfad mit dem Befehl ls angeben. 

hdfs dfs -ls /user/username/app1/subdir/
23
YoungHobbit
hadoop fs –ls /user/scott/

Um die Liste der Werte im Pfad anzuzeigen, müssen Sie den vollständigen Pfad angeben. Andere als diese Navigation ist nicht möglich.

4

Richtlinie für den Verteilungscode im Cloudera-Psudo-Modus .__ 

       hadoop fs -ls 

befehl Sehen Sie sich das Verzeichnis an, und nehmen Sie an, es gibt einen Ordner für die Ausgabe

       hadoop fs -ls ouput