对于Bash中的for循环,我有一个问题,我想在特定范围内运行awk命令,增加34,但我不知道如何在for循环中指定两个变量。我知道如何对一个变量这样做,但它对两个变量不起作用。这是我为一个变量编写的代码:for a in {1..3400..34}printf "awk 'NR>=$a&&NR<=$b { if (
这方面的性能非常糟糕;在现代系统上运行时,我几乎每秒只能破解100行。我意识到最终的答案是用一种更注重性能的语言来重写它,但是作为一个学习机会,我很好奇我在哪里可以提高我的BASH技能。我怀疑写到一个ram而不是一个文件中,然后立即将所有的文本刷新到该文件中是可以获得好处的,但是我不清楚BASH在什么地方/什么时候对内存的使用感到不高兴(我分析过的最大文件都在500‘m以下)。while read p; do
linetime=`printf "${p}" | aw
我试图使用substr在循环中运行字符串来匹配特定位置的字符串我的输入文件是02AAA45678 04BBB04673 01CCC63848 05DDD07494我希望输出行中有前2个字符中的01或02,如下面的02AAA45678 01CCC63848所示
for i in `cat cardfile.txt` do awk 'substr($0,1,2) == $i {print} ' input.txt > ou