我使用以下命令从固定长度文件中提取特定行。 每行的长度线为748
awk 'substr($0,8,2)=="04"' test.dat > output.dat
让我们说test.dat有100行。在输出文件中,我看到一些行少于748个字符。
是不是因为awk在处理特殊控制器时正在划线?如果是这样我们可以避免它吗?
从下面的答案中我了解到POSIX awk不会出现null和其他特殊字符。是否有另一个sed或grep选项可以为我做这个吗?
答案 0 :(得分:0)
将null转换为空格对我来说不是问题,所以我使用下面的命令来获取我需要的数据。
perl -pe的/ \ 000 / / g'输入文件| awk'substr($ 0,64,2)==“04”'> OUTPUTFILE