我正在编写一个bash脚本来解析标签分隔文本文件中的某些字段,并将它们附加到文件本身的文件名中。我可以使用awk解析字段,但它们附带了一个换行符。我想要从结果中删除这些换行符,或者理想地阻止awk将它们附加到第一位。只有回声出存储串的示例代码现在:如何防止awk将换行符附加到匹配项
#!/bin/bash
echo "Usage: sh extract.sh filename.txt (or *.txt)"
for filenam in "[email protected]"
do
timestring=$(awk 'BEGIN{ FS="\t"; RS="\n"; ORS="_"; OFS="_"}
/Conditions/ {printf $2}
/Date/ {printf $2}
/Time/ {printf $2}
END {}' $filenam)
echo $timestring
done
目前,每次找到一个匹配,它将覆盖所有以前的比赛中,因为\ n附加到字符串的结尾。我如何防止这种情况发生? (这样我有conditions_date_time作为一个字符串,没有任何换行符)。
对不起,如果这看起来像一个简单的问题,但我一直在谷歌搜索几个小时,并尝试所有方式的事情,我很难过。谢谢!
这正是该行终止'做
dos2unix
\ r \ N',非常感谢您的洞察力!我应该知道它必须是一些简单的输入,我使用Google搜索并尝试了几个小时的示例代码。再次感谢! – catdotgif