Text-Processing
如何使用字元串分隔符從文件中選擇特定列
我有一個文件,其中的列由字元串分隔。例如:
one<xx>two<xx>three<xx>four<xx>five<xx>six one11<xx>two11<xx>three11<xx>four11<xx>five11<xx>six11
我想提取特定列的文本,例如第 1、3 和 5 列。所以輸出應該是:
one<xx>three<xx>five one11<xx>three11<xx>five11
這該怎麼做?
awk
例如使用命令?
將輸入欄位分隔符 (
FS
) 和輸出欄位分隔符 (OFS
) 設置為<xx>
:awk 'BEGIN{FS=OFS="<xx>"} {print $1,$2,$5}' file
輸出:
one<xx>two<xx>five one11<xx>two11<xx>five11
$ perl -F'<xxx>' -pale ' $"="<xxx>";$_ = "@F[1,3,5]"' file
將欄位分隔符設置為所需的字元串,然後收集欄位的索引,將它們與 $" 中的字元串連接起來並儲存為目前記錄。-p 將自動列印。