批处理脚本找到一个文本文件中的正则表达式,它一行一行在另一个文本文件写 [英] Batch script to find a regex in a text file and write it line by line in another text file

查看:404
本文介绍了批处理脚本找到一个文本文件中的正则表达式,它一行一行在另一个文本文件写的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的文本文件容纳这些行:

 成功启动负载不对称歌-851:bqjob_r069b9290_0000014bfebbdfa9_1
成功启动负载不对称歌-851:bqjob_r76eb714e_0000014bfebbf0de_1的BigQuery错误负荷运转:错误处理作业非对称歌-851:bqjob_r7853a02a_0000014bfebc0247_1:
未找到:URI GS://brillio_buck/Week/game_activity_android_2015-01-23_to_2015-01-25.tsv
一些随机的文字... ,,,,其他一些随机文本
成功启动负载不对称歌-851:bqjob_r7d6c8bc3_0000014bfebc0d8f_1
成功启动负载不对称歌-851:bqjob_r110f9c79_0000014bfebc19fc_1
成功启动负载不对称歌-851:bqjob_r56873b54_0000014bfe9caeb7_1
成功启动负载不对称歌-851:bqjob_r0edb7092_0000014bfe9cbb8c_1

我只希望jobids如某些其他文本bqjob_r0edb7092_0000014bfe9cbb8c_1 file.So我的输出文件应为:

  bqjob_r069b9290_0000014bfebbdfa9_1
bqjob_r76eb714e_0000014bfebbf0de_1
bqjob_r7853a02a_0000014bfebc0247_1
bqjob_r7d6c8bc3_0000014bfebc0d8f_1
bqjob_r110f9c79_0000014bfebc19fc_1
bqjob_r56873b54_0000014bfe9caeb7_1
bqjob_r0edb7092_0000014bfe9cbb8c_1


解决方案

您可以使用的grep -o

 的grep -o'bqjob_r [^ [:空白:]] * _ [0-9]'文件
bqjob_r069b9290_0000014bfebbdfa9_1
bqjob_r76eb714e_0000014bfebbf0de_1
bqjob_r7853a02a_0000014bfebc0247_1
bqjob_r7d6c8bc3_0000014bfebc0d8f_1
bqjob_r110f9c79_0000014bfebc19fc_1
bqjob_r56873b54_0000014bfe9caeb7_1
bqjob_r0edb7092_0000014bfe9cbb8c_1

My text file accommodates these lines:

Successfully started load asymmetric-song-851:bqjob_r069b9290_0000014bfebbdfa9_1
Successfully started load asymmetric-song-851:bqjob_r76eb714e_0000014bfebbf0de_1                                  BigQuery error in load operation: Error processing job 'asymmetric-song-851:bqjob_r7853a02a_0000014bfebc0247_1':
Not found: URI gs://brillio_buck/Week/game_activity_android_2015-01-23_to_2015-01-25.tsv 
Some random text ...,,,, Some other random text
Successfully started load asymmetric-song-851:bqjob_r7d6c8bc3_0000014bfebc0d8f_1 
Successfully started load asymmetric-song-851:bqjob_r110f9c79_0000014bfebc19fc_1
Successfully started load asymmetric-song-851:bqjob_r56873b54_0000014bfe9caeb7_1  
Successfully started load asymmetric-song-851:bqjob_r0edb7092_0000014bfe9cbb8c_1 

I want only jobids such as bqjob_r0edb7092_0000014bfe9cbb8c_1 in some other text file.So my output file should be as:

bqjob_r069b9290_0000014bfebbdfa9_1
bqjob_r76eb714e_0000014bfebbf0de_1
bqjob_r7853a02a_0000014bfebc0247_1
bqjob_r7d6c8bc3_0000014bfebc0d8f_1
bqjob_r110f9c79_0000014bfebc19fc_1
bqjob_r56873b54_0000014bfe9caeb7_1
bqjob_r0edb7092_0000014bfe9cbb8c_1

解决方案

You can use grep -o:

grep -o 'bqjob_r[^[:blank:]]*_[0-9]' file
bqjob_r069b9290_0000014bfebbdfa9_1
bqjob_r76eb714e_0000014bfebbf0de_1
bqjob_r7853a02a_0000014bfebc0247_1
bqjob_r7d6c8bc3_0000014bfebc0d8f_1
bqjob_r110f9c79_0000014bfebc19fc_1
bqjob_r56873b54_0000014bfe9caeb7_1
bqjob_r0edb7092_0000014bfe9cbb8c_1

这篇关于批处理脚本找到一个文本文件中的正则表达式,它一行一行在另一个文本文件写的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆