【发布时间】:2016-11-09 22:22:41
【问题描述】:
我有这个值,从.txt删减:
,Request Id,dummy1,dummy2,dummyN
我正在尝试查找并用“_”替换空格,如下所示:
#iterator to read lines of txt
#if conditions
trim_line=$(echo "$user" | awk '{gsub(" ", "_", $0); print}')
echo $trim_line
但回声显示:
Id,dummy1,dummy2,dummyN
预期输出:
,Request_Id,dummy1,dummy2,dummyN
我的错误在哪里?
编辑: 用户的回声不是预期的,是:
Id,dummy1,dummy2,dummyN
应该是:
,Request Id,dummy1,dummy2,dummyN
要执行此操作,我正在使用:
for user in $(cut -d: -f1 $FILENAME)
do (....) find/replace
【问题讨论】:
-
你的预期输出是什么?
-
,Request_Id,dummy1,dummy2,dummyN -
看起来
$user不包含您所期望的内容。 -
echo $user的输出是什么? -
虽然我仍然认为您应该使用
tr而不是awk,但看起来这不是您当前的问题:echo ",Request Id,dummy1,dummy2,dummyN" | awk '{gsub(" ", "_", $0); print}'正确输出,Request_Id,dummy1,dummy2,dummyN