我希望返回图像将映射到的循环设备(使用kpartx),并将其存储在一个bash变量中。例如
# kpartx -av wheezy_cln.img
add map loop0p1 (252:2): 0 131072 linear /dev/loop0 2048
add map loop0p2 (252:3): 0 7825408 linear /dev/loop0 133120应该返回/dev/loop0并将其存储在bash变量中。
我不太擅长使用正则表达式。有人能帮帮忙吗?
发布于 2015-09-15 16:15:59
# capture command output in a
a="`kpartx -av wheezy_cln.img`"
# trim everything before the first /
a="/${a#*/}"
# trim from the next (first) space
a="${a% *}"
# result is now in a 发布于 2015-09-15 16:40:09
我不太明白你的问题(对不起),但我会试一试……
#!/bin/bash
while read line; do
if [ "`echo "$line" | grep "/dev/loop0"`" != "" ]; then
var=`echo "$line" | sed 's/.*loop0 //'`
fi
echo "$var"
done < wheezy_cln.img
exit 0结果:
2048
133120
https://stackoverflow.com/questions/32576330
复制相似问题