的Unix Shell脚本删除 - 从文件
问题描述:
我有一个包含文件以下信息的Unix Shell脚本删除 - 从文件
job, cost_code, laborcost,materialcost
202-12-21, 23-94-23, **110.00-**, 120.04
204-12-21, 23-93-23, 520.00, **120.04-**
204-12-12, 24-93-23, 155.00, **120.04-**
很少有问题记录具体的人其中有一个-sign在生产线(标有**
年底这是不真的在那里)。
我想用正则表达式去除 - 符号,但我遇到了麻烦只匹配有问题的那些。
答
尝试此,该命令在线路的端部去除破折号
sed s'/-$//'
echo "204-12-21, 23-93-23, 520.00, 120.04-" | sed s'/-$//'
答
这可能为你工作(GNU SED):
sed -r 's/-(,|$)/\1/g' file
逗号或从行的最后一个领域一个连字符前取出一个连字符。
'tr'不适用于此,它只能用于删除或替换'-'无处不在。 – tripleee