我有许多路径在我的hdfs有长的线性路径。例如。,:
/user/abc/a/b/c/d/x.txt
这里,之后 /user//a
(包括a),所有目录只有一个子目录。在这种情况下,我想检查 x.txt
但我不知道路,直到 x.txt
. 我只知道它就在里面 /user//a...
. 为了达到 x.txt
,当前,我运行以下命令:
hadoop fs -ls /user/abc/a
hadoop fs -ls /user/abc/a/b
hadoop fs -ls /user/abc/a/b/c
hadoop fs -ls /user/abc/a/b/c/d
hadoop fs -cat /user/abc/a/b/c/d/x.txt
相反,有没有什么方法,只要一个命令,我就可以到达 x.txt
(因为之后的目录结构中没有分支) /user//a
). 比如:
hadoop fs -<cmd> /user/abc/a
那会给我们 /user//a/b/c/d/x.txt
直接代替 /user//a/b
?
另外,如果我们有一条通向非线性结构的线性路径,它应该会引导我进入非线性结构的开始。因此如果 /user//a/b/c/d/
包含一个目录 e
还有一个文件 x.txt
,输出应为:
/user/abc/a/b/c/d/e
/user/abc/a/b/c/d/x.txt
注意不像 -R
switch(正如@pjames在第一个注解中提到的那样),只要线性在路径中结束,递归就应该停止。
暂无答案!
目前还没有任何答案,快来回答吧!