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
GELÖST

Per Batch CSV Auslesen - Eintrag vorgegeben zugehöriges herausfinden

Frage Entwicklung Batch & Shell

Mitglied: Peter161

Peter161 (Level 1) - Jetzt verbinden

07.02.2009, aktualisiert 15:39 Uhr, 14340 Aufrufe, 7 Kommentare

Hallo,
ich habe eine fullname.csv.
Die Fullname.csv sieht folgendermaßen aus.
1. Spalte 2. Spalte 3. Spalte 4. Spalte
Benutzername Vorname Nachname Fullname
kkulp karl kulp karl kulp

Die Schüler geben nun bei sich den Benutzernamen, zB. KKulp ein.
Nun soll die Batch von Karl die dazugehörigen 3 anderen Spalten suchen und als variable eintragen.
Also von Karl soll er den Vornamen, Nachnamen und den Fullnamen herausfinden.
%vorname% = karl
%nachname% = kulp
%fullname% = karl kulp

Wie kann ich das machen, vielen Dank. Willi
Mitglied: bastla
07.02.2009 um 14:45 Uhr
Hallo Peter161!
Die Schüler geben nun bei sich den Benutzernamen, zB. Karl ein.
Ich hätte angenommen, in Deinem Beispiel wäre der Benutzername "kkulp" und gehe daher von einer Eingabe "kkulp" aus.

Weitere Annahme (mangels Info): Als Trennzeichen in der "fullname.csv" wird ein Semikolon verwendet.

Ansonsten: In welchem Umfeld soll das Ganze denn laufen (weil anstelle der Eingabe ein Auslesen von %username% weniger aufwändig und fehleranfällig wäre)?

Anyhow:
01.
@echo off & setlocal 
02.
set "Namensliste=D:\fullname.csv" 
03.
set "Delim=;" 
04.
 
05.
set /p Eingabe=Benutzername:  
06.
if not defined Eingabe (echo Es wurde kein Benutzername eingegeben! & pause & goto :eof) 
07.
 
08.
set benutzername= 
09.
for /f "tokens=1-4 delims=%Delim%" %%a in ('findstr /b /i /c:"%Eingabe%%Delim%" "%Namensliste%"') do ( 
10.
    set "benutzername=%%a" 
11.
    set "vorname=%%b" 
12.
    set "nachname=%%c" 
13.
    set "fullname=%%d" 
14.
15.
if not defined benutzername (echo Der Benutzername "%Eingabe%" wurde nicht gefunden! & pause & goto :eof) 
16.
echo %benutzername%_%vorname%_%nachname%_%fullname%
Grüße
bastla

[Edit]
@Biber: Darf ich auf "fast stillschweigend" und "einigermaßen gutwillig" korrigieren?
Im übrigen: Pepsi auch nur als "Semikola" zu bezeichnen benötigt aber auch ein ordentliches Maß an gutem Willen ...
[/Edit]
Bitte warten ..
Mitglied: Biber
07.02.2009 um 14:49 Uhr
Moin Peter161,

eine CSV-Datei heißt CSV-Datei, weil sie comma-seperated values, einzelne Werte durch Kommata getrennt, enthält.
Oder eben das, was die Redmonder PraktikantInnen für Kommata gehalten haben - nach heutigen Erkenntnissen waren es Semikola.
(Wahrscheinlich waren aber die Begriffe "Semikola" durch Pepsi und "SSV" durch Karstadt urheberrechtlich geschützt).

Anyhow:
  • in Deiner Text-Export-Datei sind die Felder nicht erkennbar durch ein Komma, ein Semikolon oder ein TAB-Zeichen getrennt.
  • Somit gäbe es kein eindeutiges Aufdröselungsverfahren (IT-Slang: "Algorithmus"), um die im Beispiel fünf Werte "kkulp karl kulp karl kulp" auf 4 Variablen abzubilden

Deshalb die Rückfragen:
  • Wie sind denn nun die 4 "logischen" Felder getrennt? TABs?
  • oder ist es eine Datei mit fester Satzlänge? Dann musst Du uns die Länge der der einzelnen Felder sagen
  • und dieses hier "Die Schüler geben nun bei sich den Benutzernamen, zB. Karl ein" müssen wir als "geben den Benutzernamen, zB kkarl ein" interpretieren, oder?

Grüße
Biber
[Edit] Moin bastla,
wie sollen die Jungs und Mädels denn lernen, ihre Anforderungen sauber zu formulieren, wenn Du das Gestammel stillschweigend und gutwillig übersetzt?
[/Edit]
Bitte warten ..
Mitglied: Peter161
07.02.2009 um 15:51 Uhr
Also, erst mal vielen Dank.
Ich habe mich leider einmal beim Benutzername vertippt.
Ich hatte mich bis jetzt leider noch nicht mit csv beschäftigt und wusste nicht, dass ich das trennzeichen angeben muss, denn im excel wir das trennzeichen nicht angezeigt. Vielen Dank. bb willi
Bitte warten ..
Mitglied: Peter161
09.02.2009 um 15:01 Uhr
Hallo, nochmal ne erweiterte Frage, geht es auch, dass wenn der Eintrag gefunden wurde, die komplette Spalte gelöscht wird? danke Willi.
Bitte warten ..
Mitglied: Biber
09.02.2009 um 18:39 Uhr
Zitat von Peter161:
Hallo, nochmal ne erweiterte Frage, geht es auch, dass wenn der
Eintrag gefunden wurde, die komplette Spalte gelöscht wird?
danke Willi.
Moin Peter161,

a) bist Du sicher, dass Du "Spalte" meinst? "Spalte" ist das zwischen zwei Delimitern...
b) wenn ja: was sollte das für einen Sinn machen? User gibt sein "kkarl" ein, damit das Feld "kkarl" aus deieser Zeile gelöscht wird?

Bitte zeig doch mal bei dieser Datei VORHER:
kkulp; karl; kulp; karl kulp; 
hdampf;hans;dampf;hans dampf;
... wie die Datei NACHHER aussiert, wenn der Suchbegriff/der Aufrufparameter "hdampf" lautet.

Grüße
Biber
Bitte warten ..
Mitglied: Peter161
09.02.2009 um 20:27 Uhr
Es tut mir so leid, ich war etwas in Stess und habe Spalte und Zeile verwechselt, Zeile meinte ich, wie mache ich das? bb willi
Bitte warten ..
Mitglied: Biber
09.02.2009 um 23:20 Uhr
Moin Peter161,

ich war etwas in Stess
Wo liegt datt denn? Ruhrpott?

Aber wenn Du jetzt wieder zurück bist, machen wir einfach weiter...

Wenn Du einzelne ZEILEN (diese waagerechten Dinger) aus einer einfachen Text-Datei entfernen oder besser wegfiltern willst, geht es ganz simpel mit dem FIND- oder dem FINDSTR-Utilitiy.
Beide sind auf Deinem/jedem halbwegs aktuellen Windowsrechner; FindStr.exe ist die ein wenig facegeliftete Variante.

Beispiel
01.
FindStr /v "DieZeileMitDiesemSuchtextSollweg" meinerTextdatei.txt
- filtert alle Zeilen mit genau diesem TextString aus der angegebenen Textdatei.
---> viel mehr Möglichkeiten unter "FindStr /?" am Cmd-Prompt

--> Dieses gefilterte Ergebis kannst Du statt auf den Bildschirm auch in eine neue Datei umlenken NACH DEM TESTEN!!!
01.
FindStr /v "DieZeileMitDiesemSuchtextSollweg" DeineTextdatei.txt >%temp%\gefilterteDatei.txt 
02.
-- wenn Du durch Testen geprüft hast, dass Du an alles gedacht hast: 
03.
Copy /y %temp%\gefilterteDatei.txt DeineTextdatei.txt
Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Netshare Batch aus CMD auslesen und in CSV erstellen
gelöst Frage von nowyouseeme93Batch & Shell13 Kommentare

Das bekomme ich aus cmd Befehl: Share name Resource Remark ADMIN$ C:\Windows Remote Admin IPC$ Remote IPC I$ I:\ ...

Batch & Shell
Batch zum auslesen bestimmter Einträge der IPconfig mit for-Schleifen
gelöst Frage von DantarosBatch & Shell12 Kommentare

Guten Tag zusammen, dies ist mein erster Beitrag. Ich habe schon länger versucht eine Lösung für mein Problem zu ...

Windows Userverwaltung
Ordnergruppenfreigaben in CSV oder HTML auslesen
gelöst Frage von JafThomasWindows Userverwaltung3 Kommentare

Hallo zusammen, ich habe eine Excelliste eines Dienstleisters erhalten die mit den folgenden Daten unserer Fileserver gefüllt werden soll: ...

VB for Applications
CSV Datei mit VBS auslesen
Frage von scorpionesc83VB for Applications4 Kommentare

Hallo zusammen, ich bin in Sachen VBS ein totaler Anfänger und hoffe, dass ihr mir bei einem Problem helfen ...

Neue Wissensbeiträge
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 12 StundenViren und Trojaner1 Kommentar

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 15 StundenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Vmware
DOS 6.22 in VMWare mit CD-ROM
gelöst Frage von hesperVmware10 Kommentare

Hallo zusammen! Ich hab ein saublödes Problem. Es ist eine VMWare mit DOS 6.22 zu erstellen auf dem ein ...

Cloud-Dienste
PIM als SaaS Nutzungsgebühr
Frage von vanTastCloud-Dienste8 Kommentare

Moin, wir haben uns ein PIM (Product Information Management) nach unseren Ansprüchen für viel Geld als SaaS-Lösung bauen lassen. ...