Yaklaşık 2500 bilgisayarlı bir kuruluş birimim var. Bunlardan 580'ini başka bir OU'ya taşımam gerekiyor. Bunu bir toplu iş dosyasıyla yapmanın bir yolu var mı? Bilgisayar adları ile bir metin dosyası var (FQDN değil).
Yaklaşık 2500 bilgisayarlı bir kuruluş birimim var. Bunlardan 580'ini başka bir OU'ya taşımam gerekiyor. Bunu bir toplu iş dosyasıyla yapmanın bir yolu var mı? Bilgisayar adları ile bir metin dosyası var (FQDN değil).
Yanıtlar:
FOR /f %%i in (C:\path\to\textfile.txt) do (
dsquery computer -name %%i | dsmove -newparent OU=newOU,DC=domain,DC=com
)
Bu senin için halletmeli.
edit: dsmove kullanmak zorunda kaldım beri bir süre oldu :) Bu hareket ettirdiğiniz nesnenin DN gerekiyor, bu yüzden listeden DN almak ve sonra boru bir dsquery bir boru önünde ekledim dsmove. Sadece NetBIOS adlarının bir listesi için bu şimdi iyi çalışmalıdır.
Nixphoe'un cevabında küçük bir hata - to
vs do
ve eksikdo
FOR /f %%a in (file.txt) do dsquery computer -name %%a >> fqdnfile.txt
FOR /f %%b in (fqdnfile.txt) do dsmove %%b -newparent OU=newOU,DC=domain,DC=local
Bir metin dosyasında bilgisayarlarınızın adlarının ve her satırda bir tane bulunduğunu varsayarsak, bunların fqdn'sini dışa aktarmak için aşağıdaki komutu çalıştırın
FOR /f %%a in (file.txt) DO dsquery computer -name %%a >> fqdnfile.txt
Sonra bunları taşımak için aşağıdaki komutu çalıştırın. Lütfen önce bunu test etmek için dsmove lue içindeki echo komutunu kullanın
FOR /f %%b in (fqdnfile.txt) DO dsmove %%b -newparent OU=newOU,DC=domain,DC=local
Test edin. Çalışmıyorsa bana bildirin.
cmd
değil powershell
.
Yeni yöneticiler için adım adım: Bilgisayar adlarının orada her satırda bir tane listelendiği file.txt dosyasını edinin.
PC-001
PC-002
PC-003
CMD'yi açın ve satırınızın file.txt ile aynı konumda olduğunu gösterdiğinden emin olun, ardından aşağıdaki satırı yapıştırın
FOR /f %a in (file.txt) DO dsquery computer -name %a >> fqdnfile.txt
Bu, file.txt dosyanızla aynı konumda fqdnfile.txt dosyası oluşturur
Bu, fqdnfile.txt dosyasını Ayırt adlarıyla ayrıştırır (her satıra bir tane)
NOT: BAT dosyası için %% çift ve CMD için% single kullanmanız gerekir
Ardından aşağıdaki satırı çalıştırın.
FOR /f %b in (fqdnfile.txt) DO dsmove %b -newparent "OU=COMPUTERS,OU=My Bus,DC=Domain,DC=com"
NOT: Adlarda boşluk varsa, ayırt edici adınız "" içine alınmalıdır, örn. Otobüsüm
Her şeyin doğru bir şekilde taşındığını kontrol etmek için aşağıdaki satırı ÇALIŞTIRIN
FOR /f %a in (file.txt) DO dsquery computer -name %a >> location.txt