Chinaunix

标题: awk 如何在第二字段中插入 [打印本页]

作者: tiantangxiao    时间: 2017-11-29 10:16
标题: awk 如何在第二字段中插入
cat  a800|16975800

输出
800|16975|800

用awk怎么写?

谢谢

作者: wh7211    时间: 2017-11-29 10:56
回复 1# tiantangxiao


  1. awk 'BEGIN{FS=OFS="|"}gsub($1,"|"$1,$2)' a
复制代码

作者: hackersea    时间: 2017-12-08 08:25
本帖最后由 hackersea 于 2017-12-08 14:45 编辑

cat  a.txt
800|16975800
700|13992700
500|25002500


#!/usr/bin/sh
:>b.txt
while read line
do
        str1=`echo $line |awk -F "|" '{print $1}'`
        echo $line | awk  'BEGIN { FS=OFS="|" } gsub(/'"$str1"'$/,"|"$1,$2)  { print $0}' >>b.txt
done <a.txt


输出b.txt

800|16975|800
700|13992|700
500|25002|500




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2