我使用下面的命令检索hdfs配额,但我不想花哨的输出。相反,我需要将这个输出以逗号或制表符分隔的格式存储。默认情况下,它不是以制表符分隔的。。有人能提出这个建议吗?
命令: hdfs dfs -count -q -h -v /path/to/directory
输出如下:
none inf 250 G 114.9 G 518 2.8 K 45.0 G /new/directory/X
预期产量: none,inf,250 G,114.9 G,518,2.8 K,45.0 G,/new/directory/X
1条答案
按热度按时间laik7k3q1#
使用sed怎么样。它们的关键是识别一个唯一的字符串来识别hdfs输出中的分隔符。那可能是tab,因为你说它们是分开的。但是,您发布的示例输出使用了空格。
一旦您决定了一个唯一的字符串,使用sed搜索该唯一的字符串并用逗号替换它。在所有情况下,hdfs输出中的字段分隔似乎只有两个或多个空格,但行和路径的开头除外。也许您可以接受一个前导逗号,并对路径执行第二次sed。
这个堆栈溢出问题涉及替换连续空格。
如果它们是选项卡,解决方案就更简单了。