我的文字如下: 由空间划界
tab1 tab2 tab3 tab4 tab5
或以逗号分隔
TAB1,TAB2,TAB3,TAB4,tab5
我想将上述文字转换为以下内容:
( 'TAB1', 'TAB2', 'TAB3', 'TAB4', 'tab5')
或
'TAB1', 'TAB2', 'TAB3', 'TAB4', 'tab5'
怎么做? 非常感谢你的帮助!
摩
答案 0 :(得分:3)
$ cat file
tab1 tab2 tab3 tab4 tab5
tab1,tab2,tab3,tab4,tab5
$ awk -v OFS="','" -v start="'" -v end="'" '{$1=$1; print start $0 end}' file
'tab1','tab2','tab3','tab4','tab5'
'tab1,tab2,tab3,tab4,tab5'
$ awk -v OFS="','" -v start="('" -v end="')" '{$1=$1; print start $0 end}' file
('tab1','tab2','tab3','tab4','tab5')
('tab1,tab2,tab3,tab4,tab5')
$ awk -F, -v OFS="','" -v start="('" -v end="')" '{$1=$1; print start $0 end}' file
('tab1 tab2 tab3 tab4 tab5')
('tab1','tab2','tab3','tab4','tab5')
$ awk -F, -v OFS="','" -v start="'" -v end="'" '{$1=$1; print start $0 end}' file
'tab1 tab2 tab3 tab4 tab5'
'tab1','tab2','tab3','tab4','tab5'