awk匹配一行中包含某些字符的字段,字段位置不确定

2025-05-11 12:41:12
推荐回答(1个)
回答(1):

从这段uboot环境变量中匹配出root=/dev/mtdblock6,sed比较适合干这事:

str='update_args=setenv bootargs console=ttyS0,115200n8 ip=$(ipaddr):$(serverip) root=/dev/mtdblock6 rw rootfstype=jffs2 mem=64M video=davincifb:vid0=OFF:vid1=OFF:osd0=720x576x16,4050K eth=$(ethaddr)'
echo "$str" | sed -r 's/.*(root=[^ ]+) .*/\1/'