2

我 ssh 到它用于 Hadoop 的 debvox,如果我说hadoop fs -ls我会得到很多文件,包括

drwxr-xr-x   - root hadoop          0 2013-07-11 17:49 sandeep
drwxr-xr-x   - root hadoop          0 2013-04-10 14:13 testprocedure
drwxr-xr-x   - root hadoop          0 2013-04-03 13:56 tmp

我需要进入那个 tmp 文件夹,在这里查看 Hadoop shell 命令,但仍然没有找到它的命令。http://hadoop.apache.org/docs/r0.18.3/hdfs_shell.html

那么去那个文件夹的命令是什么?

在此处输入图像描述

4

4 回答 4

3

指定目录名,如下:

hadoop fs -ls tmp

我的演示 VM 的示例输出:

hadoop fs -ls

[cloudera@localhost ~]$ hadoop fs -ls
Found 12 items
-rw-r--r--   1 cloudera supergroup         46 2013-06-18 21:18 /user/cloudera/FileWrite.txt
-rw-r--r--   1 cloudera supergroup         13 2013-06-18 15:34 /user/cloudera/HelloWorld.txt
drwxr-xr-x   - cloudera supergroup          0 2013-07-01 22:07 /user/cloudera/hiveext
drwxr-xr-x   - cloudera supergroup          0 2012-06-12 15:10 /user/cloudera/input
-rw-r--r--   1 cloudera supergroup        176 2013-06-18 23:07 /user/cloudera/input_data.txt
drwxr-xr-x   - cloudera supergroup          0 2012-09-06 15:44 /user/cloudera/movies_input
drwxr-xr-x   - cloudera supergroup          0 2012-09-06 17:02 /user/cloudera/movies_output
drwxr-xr-x   - cloudera supergroup          0 2012-09-06 14:53 /user/cloudera/output
drwxr-xr-x   - cloudera supergroup          0 2013-07-01 23:45 /user/cloudera/sample_external_input
-rw-r--r--   1 cloudera supergroup         16 2012-06-14 01:39 /user/cloudera/test.txt
drwxr-xr-x   - cloudera supergroup          0 2012-06-13 00:00 /user/cloudera/weather_input
drwxr-xr-x   - cloudera supergroup          0 2012-06-13 15:13 /user/cloudera/weather_output

当我指定一个目录时hadoop fs -ls sample_external_input

[cloudera@localhost ~]$ hadoop fs -ls sample_external_input
Found 2 items
-rw-r--r--   1 cloudera supergroup         61 2013-07-01 23:17 /user/cloudera/sample_external_input/sample_external_data.txt
-rw-r--r--   1 cloudera supergroup         13 2013-07-01 23:18 /user/cloudera/sample_external_input/sample_external_data2.txt
于 2013-07-23T19:50:02.670 回答
2

我需要进入那个 tmp 文件夹,在这里查看 Hadoop shell 命令,但仍然没有找到它的命令。 http://hadoop.apache.org/docs/r0.18.3/hdfs_shell.html

没有什么能像cd那样把我们带到一个目录中。因此,您不能像在本地 FS 中那样访问该文件夹。您可能可以使用其他人建议的ls,但这只是列出目录中的内容而不会将您带到该目录。如果你真的想进入一个特定的目录,你可以使用 HDFS WebUI。您可以将您的网络浏览器指向NameNode_Machine:50070去那里。它允许您浏览整个 HDFS。您也可以查看和下载文件。

于 2013-07-24T11:27:36.167 回答
1

首先,您需要检查您是否具有 hadoop 访问权限。如果是,则使用命令:

[yourhost]$ hadoop fs -ls /dir1/

它将列出dir1中的目录或文件

于 2013-07-24T11:40:08.243 回答
1

如果您在 之后没有指定任何内容-ls,则文件夹将是您的“主”目录中的文件夹。如果你想给出一个相对于你的主文件夹的路径,你可以这样做

hadoop fs ls tmp/someTmpStuff

(假设 tmp 是您的主目录中的文件夹)或使用完全限定的路径

hadoop fs ls /user/me/tmp/someTmpStuff
于 2013-07-23T19:54:02.267 回答