यदि कोई विशिष्ट वर्चुअल मशीन कमांड लाइन से ऊपर और चल रही है तो मैं कमांड लाइन से कैसे बता सकता हूं?
यदि कोई विशिष्ट वर्चुअल मशीन कमांड लाइन से ऊपर और चल रही है तो मैं कमांड लाइन से कैसे बता सकता हूं?
जवाबों:
vboxmanage list vms
डॉस नहीं (अब?) बताता है कि वीएम चल रहा है या नहीं। यह सूची भी नहीं चल रही है।
vboxmanage showvminfo "your_vm_name" | grep -c "running (since"
यदि यह चल रहा है तो 1 लौटाएगा, या नहीं तो 0।
if ! VBoxManage showvminfo VMNAME --machinereadable | egrep '^VMState="poweroff"$' > /dev/null; then ...
vboxmanage showvminfo "vmname or GUID" | findstr /c:"running (since"
vboxmanage list runningvms
यदि आप सभी VM की सूची देखना चाहते हैं कि वे चल रहे हैं या नहीं इस आदेश का उपयोग करें:
vboxmanage list vms --long | grep -e "Name:" -e "State:"
यह वीएम का नाम एक पंक्ति में दिखाएगा और निम्न पंक्ति में इसकी स्थिति जैसे
Name: windows10pro
State: running (since 2017-06-09T09:16:46.593000000)
Name: ubuntu16LTS
State: powered off (since 2017-02-09T19:11:33.000000000)
Name: zammad
State: running (since 2017-06-09T09:08:13.871000000)
... | grep -v -e 'Host path:'
यह कमांड रनिंग वीएमएस (वर्चुअलबॉक्स 5.1 पर परीक्षण) की सूची को आउटपुट करता है
VBoxManage list runningvms
यह जानने के लिए कि कोई vm चल रहा है, इस कमांड को काम करना चाहिए (यदि चल रहा है तो 1 लौटाएं, अन्यथा 0):
VBoxManage list runningvms | sed -r 's/^"(.*)".*$/\1/' | grep 'VM Name' | wc -l
मेरा मानना है कि आप VBoxManage (VirtualBox के लिए कमांड-लाइन इंटरफ़ेस) का उपयोग करके यह जानकारी प्राप्त कर सकते हैं ।
आप किसी विशेष वर्चुअल मशीन के बारे में जानकारी दिखाने के लिए showvminfo कमांड का उपयोग कर सकते हैं ।
यह वही सूचना है जो VBoxManage सूची vms सभी वर्चुअल मशीनों के लिए दिखाएगी।
कुछ और के बिना अकेले केVBoxManage list runningvms
साथ संयोजन न केवल एक कंसोल आउटपुट देगा, बल्कि शेल स्क्रिप्टिंग जरूरतों के लिए आवश्यक रिटर्न कोड भी प्रदान करेगा। आदेश मामले में जहां एक वीएम नाम प्रदान की जाती है में वी एम के लिए सटीक दोहरे उद्धरण की आवश्यकता होगी: उदाहरण:grep
grep
$ VBoxManage list runningvms |grep '"demo_vm"'
$ echo $?
1
एक रनिंग के लिए
$ VBoxManage list runningvms |grep '"demo_vm_on"'
"demo_vm_on" {bbff5c0e-f8d4-4751-8d34-c53c4b191613}
$ echo $?
0
दूसरे उत्तर में जहां sed
दोहरे उद्धरण चिह्नों को समाप्त करने के लिए उपयोग किया गया था, या अगर दोहरे उद्धरणों के बिना grep किया गया था , तो झूठी सकारात्मक लौटा दी जाएगी। प्रदर्शन:
$ VBoxManage list runningvms |grep demo_vm
"demo_vm_on" {bbff5c0e-f8d4-4751-8d34-c53c4b191613}
$ echo $?
0
रूट @ तुम्हारा # vboxmanage सूची vms
इसके अलावा, इस दस्तावेज़ को देखें ।
vboxmanage list runningvms