I had kinda a lot! Too many to delete one by one in Devices, thanks Apple for not including multi-select. Don't double tap delete either or you'll crash Xcode. I found a script that could delete duplicates however it only worked if there was only 1 duplicate of each type so didn't work in my case. I therefor edited the script to simply delete all the simulators, and then you can add any you need just by clicking plus in the Devices window.
Save the following as remove_all_sims.py
:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import re
from subprocess import Popen, PIPE
from subprocess import call
p = Popen(["xcrun","simctl","list","devices"], stdin=PIPE, stdout=PIPE, stderr=PIPE)
output, err = p.communicate(b"input data that is passed to subprocess' stdin")
blocks = re.split("--\s+(.*?)\s+--",output)
dic = {}
i=0
for block in blocks:
matches = re.findall("iOS 8.4",block)
if len(matches)>0:
content = blocks[i+1]
lines = content.split("\n")
for line in lines:
line = line.strip()
if len(line)>0:
match = re.match("(.*?)\(",line)
if match:
devicename = match.group(1)
idMatch = re.match(".*?\((.*?)\).*",line)
dic[devicename] = idMatch.group(1)
call(["xcrun","simctl","delete",idMatch.group(1)])
# print match.group(1)
# print line
i = i+1
for guid in dic.itervalues():
call(["xcrun","simctl","delete",guid])
Then run:
python remove_all_sims.py
Note its hard coded for iOS 8.4 simulators only.