Bash输出Regex用于无空格字符串和斜杠

时间:2017-08-11 14:49:08

标签: regex bash unicode sed

这应该是一个非常简单的问题,答案相对简单。

我试图使用正则表达式来解析输出稍微修改。

我现在把这个bash代码作为脚本中的变量:

 $(/usr/bin/csvstat /home/icgwfrpa/Scripts/test.csv | sed -r 's/,/;/g' | sed ':a;N;$!ba;s/\n/ /g')

此变量返回为:

1. date     <type 'datetime.datetime'>  Nulls: False    Min: 2017-06-26 18:00:01 Max: 2017-07-14 12:00:01   Unique values: 425  
2. diskusage1   <type 'int'>    Nulls: False    Values: 26; 27; 28; 29   
3. partition1   <type 'unicode'>    Nulls: False    Values: /dev/mapper/rootvg-lv_root   
4. diskusage2   <type 'int'>    Nulls: False    Values: 30   
5. partition2   <type 'unicode'>    Nulls: False    Values: /dev/sda1  Row count: 425

这很棒。

我现在想要从此变量中删除所有内容,除了/dev/mapper/rootvg-lv_root/dev/sda1之类的字符串(或者如果它出现在此输出中,则显示以/dev/*开头的任何其他类似字符串) 。我不确定转义字符如何在带有斜杠的正则表达式中工作,所以我们将不胜感激。

为了澄清,我想要的输出应该是从/ dev / ...到空格的字符串,后跟空格或逗号,然后是序列中找到的下一个字符串。 谢谢。对不起,如果我的问题没有写好。

0 个答案:

没有答案