- 論壇徽章:
- 0
|
大牛們,我有個awk分割的問題
系統(tǒng)版本如下
$ uname -a
SunOS shreuter1 5.8 Generic_117350-62 sun4u sparc SUNW,Sun-Blade-100
我有一組數(shù)據(jù),形如
aaa||bbb||ccc||ddd
使用兩個管道號分割,于是我用如下語句想取出aaa,bbb,ccc,ddd
$N 其中的N應(yīng)該等于1~4即可
echo "aaa||bbb||ccc||ddd" |awk 'BEGIN {FS="||"} {print $N}'
但是實(shí)際的情況如下,1,3,5,7才是我取出的數(shù)據(jù),2,4,6為空
- $ echo "aaa||bbb||ccc||ddd" |awk 'BEGIN {FS="||"} {print $1}'
- aaa
- $ echo "aaa||bbb||ccc||ddd" |awk 'BEGIN {FS="||"} {print $2}'
- $ echo "aaa||bbb||ccc||ddd" |awk 'BEGIN {FS="||"} {print $3}'
- bbb
- $ echo "aaa||bbb||ccc||ddd" |awk 'BEGIN {FS="||"} {print $4}'
- $ echo "aaa||bbb||ccc||ddd" |awk 'BEGIN {FS="||"} {print $5}'
- ccc
- $ echo "aaa||bbb||ccc||ddd" |awk 'BEGIN {FS="||"} {print $6}'
- $ echo "aaa||bbb||ccc||ddd" |awk 'BEGIN {FS="||"} {print $7}'
- ddd
復(fù)制代碼
如果把雙導(dǎo)管號改成單個導(dǎo)管,沒有上述問題
- $ echo "aaa|bbb|ccc|ddd" |awk 'BEGIN {FS="|"} {print $1}'
- aaa
- $ echo "aaa|bbb|ccc|ddd" |awk 'BEGIN {FS="|"} {print $2}'
- bbb
- $ echo "aaa|bbb|ccc|ddd" |awk 'BEGIN {FS="|"} {print $3}'
- ccc
- $ echo "aaa|bbb|ccc|ddd" |awk 'BEGIN {FS="|"} {print $4}'
- ddd
復(fù)制代碼
不知道為何 雙導(dǎo)管分割有問題
如何使其正常顯示,因?yàn)檫@樣的格式我在實(shí)際使用中經(jīng)常遇到,經(jīng)常需要分割
謝謝大牛們了 |
|