我在使用特殊字符时遇到问题。我正在解析一个由制表符分隔的文本文件。如果某个参数为真,我想让程序在该行的第一个单词后面加一个"*"。
if ($Var < $3) $1 = *$1
现在每次我运行它,我得到错误,它不是行结束
两件事,但没有更多的上下文来测试,我们真的不能帮助你。
-
$Var
只有在Var=3的情况下才有意义。我不认为呆子会把你的3美元算成3美元的价值。表达式的另一边< $3
将展开为第三个字段的值。如果您从shell环境中获取$Var,则需要让gawk脚本"看到"该值,即awk '{ ..... if ('"$Var"' < $3) $1= "*" $1 .....}
-
如果你想要字符串字'*'预先挂起,你最好做
$1 = "*" $1
如果没有样本输入、样本预期输出、实际输出和错误消息,我们将在这里播放20个问题。如果这些评论不能解决你的问题,请编辑你上面的问题,包括这些项目。
注:欢迎来到StackOverflow让我提醒你我们通常做的三件事:1)当你获得帮助,试着给它,回答问题在你的专业领域2)阅读faq, http://tinyurl.com/2vycnvr, 3)当你看到好的Q&,他们投票通过使用灰色三角形,https://i.stack.imgur.com/fJACH.png,因为系统是基于声誉的可信度,用户通过分享他们的知识。另外,如果有的话,请按下复选标记符号https://i.stack.imgur.com/bFNuc.png