我有csv文件的内容如下:
1|2|3
4|5|6
7|8|9现在,我想找到使用shell脚本可以被3整除的数字。为此,我想使用awk命令。我正在学习shell脚本。所以你能帮我找到解决办法吗。
发布于 2015-06-16 11:31:08
awk -F'|' '{for(i=1;i<=NF;i++)if(!($i%3))print $i}' file这只鹰一条线应该可以。
对于您的示例,cmd输出:
3
6
9发布于 2015-06-16 11:28:35
您可以使用这个awk:
awk -v RS='\\||\n' '$0 % 3 == 0' file
3
6
9-v RS=‘AC.26\n’将输入记录分隔符设置为|或换行符,从而给出$0中的每个数字。
!($0 % 3) (模块化)将确保只有当$0 % %3为零时才打印。
发布于 2015-06-16 11:41:41
使用GNU awk,它允许多字符记录分隔符:
awk -v RS='[|[:space:]]+' '$0 % 3 == 0' file这将将记录分隔符设置为一个或多个管道或空格字符,打印每条以3等分的记录。
https://stackoverflow.com/questions/30866190
复制相似问题