【发布时间】:2015-11-01 15:05:02
【问题描述】:
我有这个命令可以打印出正在运行的虚拟机的所有信息。我真正需要的只是 vm 正在运行的目录。
这是我到目前为止所得到的。
VBoxManage list runningvms | grep vip-quickstart | awk -F ' ' '{print $1}' | xargs VBoxManage showvminfo | sed '/\'srv\', Host path: (.*)\'$/p'
这是输出
Name: 'srv', Host path: '/Users/me/MyProjects/project/vip-quickstart' (machine mapping), writable
Name: 'srv_www_wp-content_themes_vip', Host path: '/Users/me/MyProjects/project/theme' (machine mapping), writable
Name: 'project', Host path: '/Users/me/MyProjects/project/' (machine mapping), writable
Name: 'tmp_vagrant-puppet_manifests-846018e2aa141a5eb79a64b4015fc5f3', Host path: '/Users/me/MyProjects/project/vip-quickstart/puppet/manifests' (machine mapping), writable
Name: 'tmp_vagrant-puppet_modules-c332b5484a483ddd4cb97b359aa0eb4f', Host path: '/Users/me/MyProjects/project/vip-quickstart/puppet/modules' (machine mapping), writable
但我想要的只是这一行的/Users/me/MyProjects/project/vip-quickstart
Name: 'srv', Host path: '/Users/me/MyProjects/project/vip-quickstart' (machine mapping), writable
【问题讨论】:
-
顺便说一句,
grep 'foo' | awk '{ bar }'基本上总是better 写成awk '/foo/ { bar }'
标签: linux shell command-line sed