我在制表符分隔文件中有以下数据:
_ DATA _
Col1 Col2 Col3 Col4 Col5
blah1 blah2 blah3 4 someotherText
blahA blahZ blahJ 2 someotherText1
blahB blahT blahT 7 someotherText2
blahC blahQ blahL 10 someotherText3
Run Code Online (Sandbox Code Playgroud)
我想确保此文件第4列中的数据始终为整数.我知道如何在perl中执行此操作
但是我如何在使用标准linux/unix过滤器的shell脚本中执行此操作?我的猜测是使用grep,但我不确定如何?
cut -f4 data | LANG=C grep -q '[^0-9]' && echo invalid
Run Code Online (Sandbox Code Playgroud)
如果您需要剥离第一行然后使用tail -n + 2,或者您可以使用hacky并使用:
cut -f4 data | LANG=C sed -n '1b;/[^0-9]/{s/.*/invalid/p;q}'
Run Code Online (Sandbox Code Playgroud)