[英]Extract string from output command
我的程序輸出如下:
# myprogram list
val
val.dev
val.int
val.int.p1
val.int.p2
val.int.p3
val.int.p4
val.int.p5
val.dev.p6
我想從上面的輸出中僅提取val.int.
下的val.int.
所以我想在命令中添加一些內容以獲得以下輸出:
# myprogram list|<something options>
p1
p2
p3
p4
p5
是否可以僅在awk
一次調用中使用awk
(或類似sed
)來執行此操作?
awk 'NF>2 {print $3}' FS=.
.
myCommand | sed -n 's/val\.int\.//p'
嘗試這個:
awk -F'val.int.' '$0=$2' file
文件包含您的數據:
kent$ awk -F'val.int.' '$0=$2' file
p1
p2
p3
p4
p5
另一個解決方案,涉及grep
和Perl正則表達式:
$ myprogram list | grep -Po "(?<=val\.int\.).*"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.