Bash脚本-列出hadoop文件

时间:2018-09-19 08:44:25

标签: bash shell hadoop

在bash脚本的结尾,我有一些简单的代码可以在某个目录中列出csv文件:

hdfs dfs -ls $target_dir/*csv

但是它不返回我知道的csv文件列表。使它起作用的唯一方法是将该行放入另一个.sh文件中,然后从父脚本中运行。 任何想法为什么,以及如何解决?谢谢

2 个答案:

答案 0 :(得分:0)

我尝试运行相同的脚本,它对我有用。尝试通过添加#!/ bin / bash 作为脚本的第一行来执行父脚本。如果您专门将其表示为bash脚本,则它会起作用。

答案 1 :(得分:0)

使用set -x告诉我,当我尝试运行问题中的行时,我的$ target_dir变量为空。问题是末尾带有/ * csv。没有它,一切工作正常。 $ target_dir中的值正确,并列出目录中的所有文件。我只是不能缩小到csv的范围。在这种情况下,就好了。