linux – 如何在Bash脚本中将字符串作为参数传递给AWK
发布时间:2020-12-14 01:37:54 所属栏目:Linux 来源:网络整理
导读:我有一个文本文件,我想过滤 使用awk.文本文件如下所示: foo 1bar 2bar 0.3bar 100qux 1033 我想在bash脚本中使用awk过滤这些文件. #!/bin/bash#input fileinput=myfile.txt# I need to pass this as parameter# cos later I want to make it more general l
我有一个文本文件,我想过滤
使用awk.文本文件如下所示: foo 1 bar 2 bar 0.3 bar 100 qux 1033 我想在bash脚本中使用awk过滤这些文件. #!/bin/bash #input file input=myfile.txt # I need to pass this as parameter # cos later I want to make it more general like # coltype=$1 col1type="foo" #Filters awk '$2>0 && $1==$col1type' $input 但不知怎的,它失败了.什么是正确的方法呢? 解决方法
你需要双引号来允许变量插值,这意味着你需要用反斜杠转义其他美元符号,这样就不会插入$1和$2.你还需要围绕“$col1type”的双引号.
awk "$2>0 && $1=="$col1type"" (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |