![名稱[3:0]匯流排與單獨電線的分離](https://rvso.com/image/122174/%E5%90%8D%E7%A8%B1%5B3%3A0%5D%E5%8C%AF%E6%B5%81%E6%8E%92%E8%88%87%E5%96%AE%E7%8D%A8%E9%9B%BB%E7%B7%9A%E7%9A%84%E5%88%86%E9%9B%A2.png)
我有如下所示的數據
A[3:0] INPUT
B[3:0] OUTPUT
現在我想要如下所示的數據:
A[3] INPUT
A[2] INPUT
A[1] INPUT
A[0] INPUT
B[3] OUTPUT
B[2] OUTPUT
B[1] OUTPUT
B[0] OUTPUT
有什麼幫助嗎?
答案1
awk方法:
awk '{ split($1,a,/[\[:]/); d=a[2]+1; while(d--) printf "%s[%d] %s\n",a[1],d,$2 }' file
輸出:
A[3] INPUT
A[2] INPUT
A[1] INPUT
A[0] INPUT
B[3] OUTPUT
B[2] OUTPUT
B[1] OUTPUT
B[0] OUTPUT