Skip to content

Instantly share code, notes, and snippets.

@caius
Created September 23, 2013 12:48
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save caius/6669933 to your computer and use it in GitHub Desktop.
Save caius/6669933 to your computer and use it in GitHub Desktop.
Script to grab MSFT Virtualbox VMs for mac
require "net/http"
require "uri"
base_dir = File.expand_path(ARGV.first || ".")
response = Net::HTTP.get(URI("http://www.modern.ie/en-us/virtualization-tools"))
urls = response.scan(/[^"'\s]+VirtualBox\/OSX[^"'\s]+/)
urls.each do |u|
name = u[%r{VirtualBox/OSX/([^/]+)}, 1]
unless u
puts "# Failed to work with #{u.inspect}"
next
end
puts %{
echo
echo '>> Downloading #{u.inspect}'
cd #{base_dir.inspect} && mkdir -p #{name.inspect} && cd #{name.inspect} && curl -C - -O #{u.inspect}
echo
echo
}
end
__END__
echo
echo '>> Downloading "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE8_XP/IE8.XP.For.MacVirtualBox.ova"'
cd "/Users/caius/tmp" && mkdir -p "IE8_XP" && cd "IE8_XP" && curl -C - -O "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE8_XP/IE8.XP.For.MacVirtualBox.ova"
echo
echo
echo
echo '>> Downloading "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE10_Win7/IE10.Win7.For.MacVirtualBox.part{1.sfx,2.rar,3.rar,4.rar}"'
cd "/Users/caius/tmp" && mkdir -p "IE10_Win7" && cd "IE10_Win7" && curl -C - -O "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE10_Win7/IE10.Win7.For.MacVirtualBox.part{1.sfx,2.rar,3.rar,4.rar}"
echo
echo
echo
echo '>> Downloading "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE7_Vista/IE7.Vista.For.MacVirtualBox.part{1.sfx,2.rar,3.rar,4.rar,5.rar}"'
cd "/Users/caius/tmp" && mkdir -p "IE7_Vista" && cd "IE7_Vista" && curl -C - -O "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE7_Vista/IE7.Vista.For.MacVirtualBox.part{1.sfx,2.rar,3.rar,4.rar,5.rar}"
echo
echo
echo
echo '>> Downloading "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE8_Win7/IE8.Win7.For.MacVirtualBox.part{1.sfx,2.rar,3.rar,4.rar,5.rar,6.rar}"'
cd "/Users/caius/tmp" && mkdir -p "IE8_Win7" && cd "IE8_Win7" && curl -C - -O "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE8_Win7/IE8.Win7.For.MacVirtualBox.part{1.sfx,2.rar,3.rar,4.rar,5.rar,6.rar}"
echo
echo
echo
echo '>> Downloading "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE9_Win7/IE9.Win7.For.MacVirtualBox.part{1.sfx,2.rar,3.rar,4.rar,5.rar}"'
cd "/Users/caius/tmp" && mkdir -p "IE9_Win7" && cd "IE9_Win7" && curl -C - -O "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE9_Win7/IE9.Win7.For.MacVirtualBox.part{1.sfx,2.rar,3.rar,4.rar,5.rar}"
echo
echo
echo
echo '>> Downloading "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE10_Win8/IE10.Win8.For.MacVirtualBox.part{1.sfx,2.rar,3.rar}"'
cd "/Users/caius/tmp" && mkdir -p "IE10_Win8" && cd "IE10_Win8" && curl -C - -O "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE10_Win8/IE10.Win8.For.MacVirtualBox.part{1.sfx,2.rar,3.rar}"
echo
echo
echo
echo '>> Downloading "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE11_Win7/IE11.Win7.For.MacVirtualBox.part{1.sfx,2.rar,3.rar,4.rar,5.rar}"'
cd "/Users/caius/tmp" && mkdir -p "IE11_Win7" && cd "IE11_Win7" && curl -C - -O "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE11_Win7/IE11.Win7.For.MacVirtualBox.part{1.sfx,2.rar,3.rar,4.rar,5.rar}"
echo
echo
echo
echo '>> Downloading "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE11_Win81/IE11.Win8.1Preview.For.MacVirtualBox.part{1.sfx,2.rar,3.rar}"'
cd "/Users/caius/tmp" && mkdir -p "IE11_Win81" && cd "IE11_Win81" && curl -C - -O "https://az412801.vo.msecnd.net/vhd/IEKitV1_Final/VirtualBox/OSX/IE11_Win81/IE11.Win8.1Preview.For.MacVirtualBox.part{1.sfx,2.rar,3.rar}"
echo
echo
@caius
Copy link
Author

caius commented Sep 23, 2013

Run with bash < <(ruby grab_msft_vms.rb /path/to/download/folder/) and it'll work through and grab them one by one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment