譬如文件file如下:
$cat file.txt
This is a 233 test !
only test 339833.
25 includes.
1 file test
用awk:
awk RS='[0-9]+'+' ' '{sum+=RT}END{print sum}'file
用sed:
sed 's/.*/([0-9]*.*/)//1/g' file | xargs awk '{sum+=$0}END{print sum}'
思维拓展:
如果一行存在多个数字呢? A:使用awk的RS和RT可以搞定
实践证明,awk的gsub和RS,RT是相当的有用