Christian Hick Asked: 2020-06-14 19:36:42 +0800 CST2020-06-14 19:36:42 +0800 CST 2020-06-14 19:36:42 +0800 CST 如何使用 AWK 或 SED 更改变量的第三列,使其用单引号括起来 772 我有一个变量 $out: out=1,2,3,4,5 我想更改第三列,以便值得到单引号(我在这里谈论列,因为 $out 表示数据库条目的插入语句的值): out=1,2,'3',4,5 有谁知道如何使用 awk 或 sed 来做到这一点? linux bash 2 个回答 Voted Hannu 2020-06-14T22:33:40+08:002020-06-14T22:33:40+08:00 仅重击... $ out=1,2,3,4,5 $ 回声 $out | ( IFS=',' 读 abcde ; echo $a $b $c $d $e ) 1 2 3 4 5 $ 回声 $out | ( IFS=',' 读 abcde ; echo "$a,$b,'$c',$d,$e" ) 1,2,'3',4,5 $ out="$(echo $out | ( IFS=',' 读 abcde ; echo "$a,$b,'$c',$d,$e" ))" $回声$输出 1,2,'3',4,5 $ 相关信息:www.tldp.org -> Bash 指南 Best Answer Thor 2020-06-15T02:50:49+08:002020-06-15T02:50:49+08:00 如果: out=1,2,3,4,5 与sed: sed -E "s/[^,]+/'&'/3" <<<"$out" 与awk: awk '{ $3 = q $3 q }1' FS=, OFS=, q="'" <<<"$out" 两种情况下的输出: 1,2,'3',4,5
仅重击...
相关信息:www.tldp.org -> Bash 指南
如果:
与
sed
:与
awk
:两种情况下的输出: