我想阅读" PUB"字符串,如果找到,则读取下一个50个字符并附加到excel文件中

时间:2017-10-30 14:14:20

标签: linux bash shell unix sh

我正在尝试编码我在t1.txt中的日期,如下所示:

table             column size time
PUB.emp            20    1k   00.4
PUB.dept           10    3k   003
PUB.tst            34    1K   034

我想要像

一样
PUB.emp            20
PUB.dept           10
PUB.tst            34

基本上我需要搜索以" PUB开头的行。"如果找到则读到下一个20个字符。并在excel文件中附加两列..

请帮忙..谢谢

1 个答案:

答案 0 :(得分:0)

使用awk

awk '/^PUB/ {print substr($0, 0, 23)}' t1.txt
  • /^PUB/匹配以PUB

  • 开头的记录
  • 对于匹配的记录,print substr($0, 0, 23)会打印前23个字符(前3个字符为PUB

示例:

% cat t1.txt 
table             column size time
PUB.emp            20    1k   00.4
PUB.dept           10    3k   003
PUB.tst            34    1K   034

% awk '/^PUB/ {print substr($0, 0, 23)}' t1.txt
PUB.emp            20  
PUB.dept           10  
PUB.tst            34