Virtual environment/Virtual Box

virtualbox 링크만 끊기

D4tai1 2018. 12. 28.

1. 배치파일

  ▶ 조교 업무를 하면서 센터에서는 VM ware라이센스가 없었기 때문에 Virtual box를 설치하여 사용하게 되었다.

  ▶ PC가 많아 같은 작업을 PC마다 반복해서 하는 작업이라 지루하고 힘들기 때문에 배치파일을 이용하기로 했다.

  

1) 링크 끊기

 [1] 소스

@echo off
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" list vms > listvms.txt
FOR /F delims^=^"^ tokens^=1* %%i in (listvms.txt) do (
 echo '%%i'
 "C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" unregistervm "%%i"
)


  [2] 설명

  ▶ [@echo off]는 현재 진행중인 명령어를 보여주지 않고(생략) 명령어를 실행한 결과만 보여준다.

  ▶ [vboxmanage list vms > listvms.txt]는 vboxmanage의 list 명령어를 사용한 것으로 가상머신리스트를 텍스트로 저장한다.

  ▶ for문의 /f는 파일을 줄단위로 읽어서 i에 저장하며 마지막 줄이면 반복을 종료한다는 의미이다.

  ▶ delims^=^"^ tokens^=1*로 "내 만 읽는다.

  ▶ %%i라고 적었지만 배치파일이 아닌 실제 command line에서 작성할 경우는 %i와 같이 %를 하나만 붙인다.

  ▶ [echo %%i]는 텍스트 파일에서 한 줄 내에 "" 사이의 내용을 출력하는 것을 말한다.

  ▶ [vboxmanage unregistervm "%%i"]는 vboxmanage의 unregistervm 명령어를 사용한 것으로 %%i이름의 가상머신의 링크를 끊는다는 말이다.


2) 시연

  ▶ 실제로 만들어진 가상머신의 정보가 들어있는 텍스트파일이다.


  ▶ unregistervm 명령어는 제외하고 출력되는 것만 확인하였다.

  ▶ 실행할 경우 링크가 전부 끊어져서 다시 연결해야 하기 때문이다.

  ▶ 다시 연결하는 부분은 다음 장에서 작성하려고 한다.

  ▶ 참고 : https://ccurity.tistory.com/213


댓글