我正在运行一个hadoop命令并将输出保存到一个txt文件中。我只希望hadoop命令的特定部分在文本文件中。
# !/bin/sh
hadoop fs -ls /projects/abcd/ | egrep 'delta|snapshot' > /homes/abcd/tools/list_of_feeds.txt
“list\u of \u feeds.txt”的内容-
drwxr-x--- - abcd users 0 2013-02-05 12:16 /projects/abcd/test1_delta
drwxr-x--- - abcd users 0 2013-02-06 00:21 /projects/abcd/test2_snapshot
我只希望文件的内容是-
test1_delta
test2_snapshot
如何解析这个文件或在shell中执行此操作?
谢谢
2条答案
按热度按时间7kjnsjlb1#
你可以把你的命令输入awk。使用以下选项:
wz3gfoph2#
awk
对于选择字段很有用(而且很容易)。我不知道你的for循环在做什么。
$NF
选择最后一个字段,因为硬编码路径名中的组件数有点愚蠢。显然
egrep
不需要与awk
.