我是使用awk的新手,而且我遇到了一個問題。如何在unix中使用awk獲得所需的輸出
我有一個文件:
startpoint--A
endpoint--B
startpoint--C
endpoint--D
我想作爲在柱中期望的,使得下起始點,我所有的起始變量(A,C)和下端點的所有端部可變因素的輸出(B ,d)。例如:
startpoint endpoint
A B
C D
我該怎麼用awk來完成這項工作?
我是使用awk的新手,而且我遇到了一個問題。如何在unix中使用awk獲得所需的輸出
我有一個文件:
startpoint--A
endpoint--B
startpoint--C
endpoint--D
我想作爲在柱中期望的,使得下起始點,我所有的起始變量(A,C)和下端點的所有端部可變因素的輸出(B ,d)。例如:
startpoint endpoint
A B
C D
我該怎麼用awk來完成這項工作?
推測您的數據文件交替出現startpoint
和endpoint
行。在這種情況下,您可以保存最近的startpoint
,並在遇到endpoint
時將它們打印出來。
$ cat data.txt
startpoint--A
endpoint--B
startpoint--C
endpoint--D
$ cat points.awk
BEGIN { print "startpoint endpoint" }
$1 == "startpoint" { sp = $3 }
$1 == "endpoint" { printf "%-12s%s\n", sp, $3 }
$ awk -F- -f points.awk data.txt
startpoint endpoint
A B
C D
不需要AWK,cut
和paste
會做:
{
printf "startpoint\tendpoint\n"
cut -d '-' -f 3 data.txt | paste - -
} | column -t
我認爲你的數據是「格式良好的」,與端點立即啓動點以下。
請詳細說明你的問題。你想要輸出什麼確切的形式? – brc
我已經編輯了您的問題表單,但仍然很難弄清楚您要問什麼。另外,請使用完整的句子,並儘可能使用適當的語法和拼寫。 –