例如文件的内容是这样的:
Please rise , then , for this minute ' s silence . ||| Please rise , then , for this minute , silence . ||| 0 1 2 3 4 5 6 7 -1 10 11
( The House rose and observed a minute ' s silence ) ||| ( he listened and observed a minute ' s silence ) ||| 0 -1 -1 4 5 6 7 8 9 10 11
Madam President , on a point of order . ||| Madam President , on points of order . ||| 0 1 2 3 -1 6 7 8
每行有3列,用 “ ||| ” 分隔,现在想抽取其中的每一列:
可以先把 “ ||| ”替换成换行符,然后隔固定行抽取:
$ sed "s/ ||| /\n/g" file.txt | awk '{if (NR%3 == 1) print $0; }'
$ sed "s/ ||| /\n/g" file.txt | awk '{if (NR%3 == 2) print $0; }'
$ sed "s/ ||| /\n/g" file.txt | awk '{if (NR%3 == 0) print $0; }'