我有一个|分隔文件,每个记录中有132个字段,我需要做的是将字段3中的最后2个字节附加到字段1,然后打印整个记录:
输入记录示例
field1 field2 field3 field4 field5 .... field 132
123456 xyz 01/28/99 xyz123 xyz145 .... xyz567 输出应为:
field1 field2 field3 field4 field5 .... field 132
12345699 xyz 01/28/99 xya123 xyz145 .... xyz567下面是我的脚本:
#!/bin/ksh
IFS="|"
while read a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11; do
yy=`expr substr "$a3" 7 2`
acyy=$a1$yy
print $acyy $a2 $a3 $a4 $a5 $a6 $a7 $a8 $a9 $a10 $a11
done < infile.txt > outfile.txt有没有办法读取和打印所有剩余的文件?
请帮忙,谢谢!
发布于 2011-03-29 23:08:11
不是所有的“剩余”字都赋值给要读取的最后一个参数吗?(包括分隔符,|)如果您不希望分隔符只' sed‘最后一个参数-例如,$(echo "$a11“|sed 's/|/ /')
https://stackoverflow.com/questions/5474516
复制相似问题