web-dev-qa-db-ja.com

Hadoop HDFSでディレクトリをナビゲートする方法

HDFSでナビゲートしたい

まず、「ルート」HDFSのディレクトリを調べました

[cloudera@localhost ~]$ 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

それから私はそれらの1つを入力しようとしました

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

「hadoop cd」も試さない

[cloudera@localhost ~]$ 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.

-ls -R(再帰)を使用してすべてのファイルを表示しないでください。

Cdのようなコマンドを使用してナビゲートできるようにしたい

12
2Big2BeSmall

Hdfsファイルシステムにはcd(ディレクトリの変更)コマンドはありません。ディレクトリをリストし、それらを使用して次のディレクトリに到達することができます。

lsコマンドを使用して完全なパスを指定して、手動で移動する必要があります。

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

パスの値のリストを表示するには、フルパスを指定する必要があります。それ以外のナビゲーションはできません。

4

Clouderaの擬似モード配布コードのガイドライン

       hadoop fs -ls 

コマンド次に、出力フォルダーが存在すると仮定して、ディレクトリを確認します。このコマンドを使用して、出力フォルダー内を確認します。

       hadoop fs -ls ouput