[英]grep or awk : Match on alpha prefixed number range
如何匹配一系列以字母為前綴的系統名稱?
給定:sfc30700 到 sfc30900
例如,希望文件中列出的從 sfc30750 到 sfc30850 的所有系統,並且序列未完全填充。
我確實嘗試過像這樣使用 egrep ,但是它返回一個錯誤。
cat mahinelist.txt | egrep ':[[:sfc:]]\{30750,30850\}:'
egrep: Invalid character class name
這將打印出所有包含“ sfc ”的行,后跟“30750”和“ 30850 ”之間的數字。
$ cat file
sfcdd30784
sfc30689
word sfc30750 word
sfc30753
sfc30756
sfc30900
sfc30901
daw30900
$ awk '{ n=match($0,"sfc"); m=substr($0,n+3,5)*1;
if(m>=30750 && m<=30850){ print } }' file
word sfc30750 word
sfc30753
sfc30756
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.