Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

System- Umgebungsvariable für den Common Name oder CN eines Computers

Frage Entwicklung Batch & Shell

Mitglied: knuckles

knuckles (Level 1) - Jetzt verbinden

20.11.2008 um 12:12 Uhr, 4439 Aufrufe

Probleme mit Skript für die automatische Druckerzuweisung

Hallo,

ich habe eine Frage zum Thema Skripten, genauer gesagt geht es mir dabei um eine einzige "kleine" Frage.
Ich will bei uns im Unternehmen eine automatisierte Druckerzuweisung erstellen, via Printserver (W2K3).
Das ganze soll nicht Benutzerabhängig, also mit ifmember durchgeführt werden, sondern Computer-abhängig.

Hintergrund ist, dass ich eingentlich will, dass egal wer sich an einem PC anmeldet, immer die Drucker bereit stehen,
die auch im jeweiligen Büro vorhanden sind - ist ja logisch


Nun habe ich mir schon einige Sachen zusammengebastelt:



//////////////////////////////////////////////////////////////////////
@echo off 
cls 
 
REM ####################### 
REM ##  COMPUTERGRUPPEN  ## 
REM ####################### 
echo Gruppenmitgliedschaft des Computers wird ermittelt ... 
echo off 
ping -n 2 localhost > NUL 
%LOGONSERVER%\netlogon\utilities\dsquery computer -name %computername% | %LOGONSERVER%\netlogon\utilities\dsget computer -memberof > c:\temp\computergruppen.txt 
 
REM ########################################### 
REM ##  ABFRAGE VORHANDENER NETZWERKDRUCKER  ## 
REM ########################################### 
echo Netzwerkdrucker werden gesucht ... 
echo off 
ping -n 2 localhost > NUL 
reg query "HKCU\Software\Microsoft\Windows NT\CurrentVersion\Devices" >> C:\Temp\drucker.txt 
 
 
REM ########################################### 
REM ##  ABFRAGE DER GRUPPEN IN PRINTERS.TXT  ## 
REM ###########################################   
 
echo Netzwerkdrucker werden hinzugefuegt ... 
echo off 
%logonserver%\netlogon\batch\ML\Sub\con2prt /f 
for /F "tokens=*" %%i in (%LOGONSERVER%\netlogon\Utilities\printers.txt) do if /i %%i==(%LOGONSERVER%\netlogon\utilities\dsquery computer -name %computername% | %LOGONSERVER%\netlogon\utilities\dsget computer -memberof) goto %%j 
goto END 
 
 
REM ########################### 
REM ##  DRUCKERZUWEISUNGEN  ## 
REM ########################### 
 
:HPLJ1100 
find /I "\\printserver-ml\HPLJ1100" C:\Temp\drucker.txt 
if errorlevel 1 call %logonserver%\netlogon\batch\ML\Sub\con2prt /c "\\printserver-ml\HPLJ1100" 
goto end 
 
:OKIC5800 
find /I "\\printserver-ml\OKIC5800" C:\Temp\drucker.txt 
if errorlevel 1 call %logonserver%\netlogon\batch\ML\Sub\con2prt /c "\\printserver-ml\OKIC5800" 
goto end 
 
[..] 
 
:end 
 
REM ################################# 
REM ##  TEMPORAERE DATEN LOESCHEN  ## 
REM ################################# 
 
del c:\temp\drucker.txt 
del c:\temp\computergruppen.txt 
//////////////////////////////////////////////////////////////////////////////////

Die Printers.txt sieht (beispielhaft) so aus:

HPLJ1100 GG_Printers_IT_EL GG_Printers_IT_GS [..]
OKIC5800 GG_Printers_IT_EL

//////////////////////////////////////////////////////////////////////////////////

Nun zu meinem Problem:
Ich kann die Gruppenzugehörigkeit des jeweiligen PCs mit dsquery und dsget herausfinden und in einer Datei abspeichern --> c:\temp\computergruppen.txt
Die sieht dann beispielsweise wie folgt aus:

"CN=GG_Printers_IT_EL,OU=TestOrganisation,DC=meinedomaene,DC=dom"
"CN=Dom„nencomputer,CN=Users,DC=meinedomaene,DC=dom"

Wie man sehen kann, wird die CN GG_Printers_IT_EL ausgelesen - wie von mir gewünscht.
Jetzt das große ABER.
Wie kann ich in meinem Batch File die Zeile:

for /F "tokens=*" %%i in (%LOGONSERVER%\netlogon\Utilities\printers.txt) do if /i %%i xxx goto %%j

so abwandeln, dass anstatt dem Platzhalter xxx die CN GG_Printers_xx_xx ausgelesen wird, von mir aus auch aus der Datei computergruppen.txt ???
Geht das überhaupt ?
Das ist mein einzigstes Problem noch.


Danke euch im Voraus und Gruß
Benny (alias knuckles)
Ähnliche Inhalte
Windows Systemdateien
Warum System auf "C:" (29)

Frage von DzumoPRO zum Thema Windows Systemdateien ...

Batch & Shell
Umgebungsvariable "PATH" für eine Anwendung anpassen (7)

Frage von enno zum Thema Batch & Shell ...

Batch & Shell
gelöst Powershell Vergleichen Name u Vorname mit Active Directory (5)

Frage von pixel0815 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(5)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(5)

Anleitung von BassFishFox zum Thema Windows 10 ...

Administrator.de Feedback

Tipp: Ungelöste Fragen ohne Antwort in Tickeransicht farblich hinterlegen

Tipp von pattern zum Thema Administrator.de Feedback ...

Viren und Trojaner

Neue Magazin Ausgabe: Malware und Angriffe abwehren

Information von Frank zum Thema Viren und Trojaner ...

Heiß diskutierte Inhalte
Windows Systemdateien
Warum System auf "C:" (29)

Frage von DzumoPRO zum Thema Windows Systemdateien ...

LAN, WAN, Wireless
Cisco SG200: Auf bestimmtem vLAN bestimmte TCP-Ports sperren (19)

Frage von SarekHL zum Thema LAN, WAN, Wireless ...

Windows Server
gelöst Update BackupExec 2015 auf 2016 führt zu SQL-Server Problem (16)

Frage von montylein1981 zum Thema Windows Server ...

Batch & Shell
gelöst Batch um Benutzer aus Sitzung abzumelden (15)

Frage von zeroblue2005 zum Thema Batch & Shell ...