perl 文本中的格式
时间 最大内存缓存消息数运行模式 支持的特性 最大自由实体数
01-19 17:26:00 5000000 正常模式 NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana 20000
01-19 17:26:00 5000000 正常模式 NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana 20000
01-19 17:26:00 10000000 40000
01-19 17:26:05 5000000 正常模式 NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana 20000
01-19 17:26:05 5000000 正常模式 NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana 20000
01-19 17:26:05 10000000 40000
这些数据在tb_data.txt中。
如何将第一行的数据去掉,并且把数据转成
01-19 17:26:00|5000000|正常模式|NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana|20000
01-19 17:26:00|5000000|正常模式|NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana|20000
01-19 17:26:00|10000000|||40000
01-19 17:26:05|5000000|正常模式|NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana|20000
01-19 17:26:05|5000000|正常模式|NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana|20000
01-19 17:26:05|10000000|||40000
注意原文本中的字段之间的空格不规范。
[解决办法]
能不能自己先试着写下……
[解决办法]
echo '.. ............. ..... .......01-19 17:26:00 5000000 .... NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana 2000001-19 17:26:00 5000000 .... NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana 2000001-19 17:26:00 10000000 4000001-19 17:26:05 5000000 .... NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana 2000001-19 17:26:05 5000000 .... NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana 2000001-19 17:26:05 10000000 40000' |\sed '1d;s/[[:blank:]]\+/|/g;s/|$//;s/\([0-9]\)|\([0-9]\+$\)/\1|||\2/'01-19|17:26:00|5000000|....|NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana|2000001-19|17:26:00|5000000|....|NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana|2000001-19|17:26:00|10000000|||4000001-19|17:26:05|5000000|....|NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana|2000001-19|17:26:05|5000000|....|NetSmc/Qos/MM5/SMPP34/CCM/DCS/Ana|2000001-19|17:26:05|10000000|||40000