Top-Themen

Aktuelle Themen (A bis Z)

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

Frage Entwicklung Batch & Shell

GELÖST

Zeilen in einer Batch überspringen

Mitglied: Nagus

Nagus (Level 2) - Jetzt verbinden

18.02.2014 um 12:21 Uhr, 3720 Aufrufe, 3 Kommentare

Hi Zusammen,

ich stehe mal wieder auf dem Schlauch! Ich bastel gerade ein Skript um einen User Migration zu erleichtern.
Dazu lese ich per net use die gemappten Laufwerke aus und möchte diese weiter verarbeiten.
Beim suchen habe ich nix passendes gefunden (under der Schei... IE zeigt die Sseite nicht richtig an)

Ausgabe von net use:

01.
New connections will be remembered. 
02.
 
03.
Status       Local     Remote                    Network 
04.
 
05.
------------------------------------------------------------------------------- 
06.
             H:        \\xxxx\yyyyy\zzzzz\userid  
07.
                                                 Microsoft Windows Network 
08.
             K:        \\dddddd\gggggggg\hhhhhhh\SHARED  
09.
                                                 Microsoft Windows Network 
10.
             P:        \\cccccccc\lllllll\uuuuuuu\shared 
11.
                                                 Microsoft Windows Network 
12.
             S:        \\cccccccc\lllllll\ooooooooooo\shared  
13.
                                                 Microsoft Windows Network 
14.
             T:        \\cccccccc\lllllll\ooooooooooo\shared  
15.
                                                 Microsoft Windows Network 
16.
The command completed successfully. 
17.
 
Mein Schnipsel sieht bisher so aus
01.
set "pfad=c:\%username_alt%" 
02.
net use > %pfad%\drives.tmp 
03.
FOR /F "skip=5 usebackq tokens=1,2,3,4* delims=\ " %%i in (%pfad%\drives.tmp) do echo %%i %%j %%k %%l %%m >>%pfad%\drives.txt
so sieht die Ausgabe aus

01.
H: xxxx yyyyy zzzzz userid   
02.
Microsoft Windows Network    
03.
K: dddddd gggggggg hhhhhhh SHARED   
04.
Microsoft Windows Network    
05.
P: cccccccc lllllll uuuuuuu shared    
06.
Microsoft Windows Network    
07.
S: cccccccc lllllll ooooooooooo shared   
08.
Microsoft Windows Network    
09.
T: cccccccc lllllll ooooooooooo shared  
10.
Microsoft Windows Network    
11.
The command completed successfully.  
Aber ich will die Zeilen die mit Microsoft anfangen und die letzte überspringen. wie bekomme ich das hin?

Schon mal danke für alle Tipps
Nagus - der auf dem Schlauch steht ....
Mitglied: Biber
18.02.2014, aktualisiert um 13:19 Uhr
Moin Nagus,

du könntest (theoretisch, do not use) Ausgabe von NET USE sofort filtern mit
net use|findstr "\\"

Probier bitte am CMD-Prompt aus - aber verwenden wollen wir es nicht.

Denn dann hast du das Problem, dass mal 3, mal 4 Tokens rüberkommen, denn das erste Token "Status", das bei deinem Test immer leer ist, kann manchmal einen Wert (zB "OK") enthalten.
-> Folge: in dem Auswerten der Textdatei weiss du nie, ob das erste Token (in der Ergebniszeile) nun wirklich ein Laufwerksbuchstabe ist oder der Status.
Macht es unnötig komplex, wenn du da auch wieder Fallunterscheidungen einbauen musst.

Verwende lier eine gezielte WMIC-Abfrage auf exakt die Infos, die du brauchst.
wmic netuse get localname, remotename
...statt des NET USE... probier es am CMD-Prompt.

-> diese Ausgabe kannst du noch nachbehandeln mit | findstr "\\", um die Titelzeile wegzufiltern.

Grüße
Biber
Bitte warten ..
Mitglied: Nagus
18.02.2014 um 13:46 Uhr
Moin Biber,
danke, aber da habe ich keinen Zugriff drauf ...

Habe eine eigene Lösung gefunden die funktioniert

01.
FOR /F "eol=M skip=6 usebackq tokens=1,2,3,4* delims=\ " %%i in (%pfad%\drives.tmp) do echo %%i;\\%%j\%%k\%%l\%%m >>%pfad%\drives.t1p 
02.
FOR /F "tokens=1,2 delims=;" %%i in (%pfad%\drives.t1p) do if %%i EQU The (echo.>nul) else echo %%i %%j>>%pfad%\drives.txt
was nur merkwürdig ist: die erste Zeile der Datei drives.txt ist leer - in den temp Dateien macht er es rcihtig .. Oo

Gruß
Nagus
Bitte warten ..
Mitglied: Biber
LÖSUNG 18.02.2014, aktualisiert um 21:02 Uhr
Moin Nagus,

na, ein bsschen schlanker bekomme ich das auch mit net use hin.
Demo am CMD
FOR /F "tokens=1,2,3,4* " %i in ('net use^|findstr "\\"') do @if [%k]==[] (echo %i %j) else echo %j %k

Als Batch dann mit jeweils zwei Prozentzeichen vermutlich (ungetestet):
01.
:: Batch SammleAlleNetUses.cmd 
02.
FOR /F "tokens=1,2,3,4* " %%i in ('net use^|findstr "\\"') do @if [%%k]==[] (echo %%i %%j) else echo  %%j %%k
Glattgebügelt wird nur der Fall, dass im ersten Token "Status" etwas steht (also etwas wie "OK"/"Getrennt".)
Was passiert, wenn ein Netzlaufwerk OHNE Laufwerksangabe verbunden ist, das habe ich nicht ver- bzw. untersucht.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Überspringen von Befehlszeilen in Batch Datei wenn ein Fehler auftaucht
gelöst Frage von Rizal1966Batch & Shell3 Kommentare

Ich habe mehrere Rechner die ich täglich und automatisiert neustarten möchte. Dazu würde ich gerne eine Batchdatei schreiben, welche ...

Batch & Shell
Wie ändert eine batch eine bestimmte zeile in einer anderen batch
Frage von J4YK0BBatch & Shell3 Kommentare

Wie schreibt eine batch eine andere batch um, aber nur eine SPEZIELLE zeile? Das System ist wiefolgt. Man gibt ...

Microsoft Office
Word2010: Serienbrief Zeile bei leeren Feld überspringen innerhalb einer Tabelle
Frage von dafdagMicrosoft Office1 Kommentar

Hallo zusammen, ich habe ein Word2010 Serienbrief das mit einer Excel Datenquelle verknüpft ist. Sobald ein leeren Datensatz vorkommt ...

Netzwerkgrundlagen
VLSM - Überspringen mancher Netze bei der Berechnung
gelöst Frage von agowa338Netzwerkgrundlagen10 Kommentare

Hallo alle zusammen, Ich bin seit längerem an einer VLSM Übung, ich habe auch schon einiges davon gelöst. Das ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 1 TagLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 1 TagTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 1 TagSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 1 TagSicherheit9 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Sicherheit
Meltdown und Spectre: Die machen uns alle was vor
Information von FrankSicherheit27 Kommentare

Aktuell sieht es in den Medien so aus, als hätten die Hersteller wie Intel, Microsoft und Co den aktuellen ...

Ubuntu
Ubuntu - Starter für nicht vertrauenswürdige Anwendungen
Frage von adm2015Ubuntu17 Kommentare

Hallo zusammen, Ich verwende derzeit die Ubuntu Versionen 17.10 bzw. im Test 18.04. Ich habe mehrere .desktop Dateien in ...

SAN, NAS, DAS
Hilfe beim Einrichten eines Storages (SAN)
gelöst Frage von Vader666SAN, NAS, DAS15 Kommentare

Hallo Admins! Ich bin in einer kleineren Firma und hatte bisher mit dem Thema SAN nur in meiner Ausbildung ...

Monitoring
VPN Performance Zyxel-Fritte
gelöst Frage von HenereMonitoring13 Kommentare

Servus, nachdem ihr mir ja schon so gut helfen konntet, was das VPN zwischen Zyxel USG60W und Fritte 7490 ...