将pig fs命令输出到文件或变量

0mkxixxg  于 2021-06-21  发布在  Pig
关注(0)|答案(2)|浏览(380)

我正在尝试监视hdfs系统中的文件。目前,我的做法非常痛苦: fs -ls -R /river/entity/files; .
此命令将结果输出到控制台日志文件中。然后我需要将结果复制/粘贴到一个文件中以使用它。。。一点效率都没有。使用pig,有没有简单的方法将命令的结果直接输出到文件中?
编辑:谢谢你的回答,但我还不够清楚。对不起的!我不能用终端。我只执行一个pig脚本,我希望我的结果是hdfs。只有在hadoop端才有可能做到这一点吗?

1qczuiv0

1qczuiv01#

只需输入您的终端:

$hadoop fs -ls -R /river > your/path/to/file.txt

或在shell脚本示例中编写命令 file.sh 包含以下代码,然后运行shell脚本:

hadoop fs -ls -R /river > your/path/to/file.txt

如果您使用的是pig grunt shell或pig脚本,那么请使用shell实用程序命令
例子 file_name.pig 包含代码 fs -ls -R /river/entity/files 然后从终端运行你的Pig脚本 PIG file_name.pig > your/path/to/file2.txt

d8tt03nd

d8tt03nd2#

是的,你可以!实际上,您可以在pig脚本中执行以下任何shell命令:

%declare dummy `hdfs dfs -ls -R /river/entity/files | hdfs dfs -put - hdfs://nn.example.com/hadoop/myfile.log`

但是您应该考虑到pig语句并没有按照脚本中出现的顺序执行!

相关问题