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

Zeilen aus Textdatei auslesen und danach weiterverwenden

Frage Entwicklung Batch & Shell

Mitglied: batch12

batch12 (Level 1) - Jetzt verbinden

09.09.2009, aktualisiert 19:10 Uhr, 4753 Aufrufe, 11 Kommentare

Guten Abend,

ich habe ein Problem. Mein problem ist, dass ich Zeilen aus einer Text datei aus lesen will und diese danach in eine batch datei einfügen will.

Hier noch mal etwas genauer:
01.
@echo off 
02.
set log="%userprofile%\Desktop\files.txt" 
03.
if exist %log% del %log% 
04.
 
05.
for %%d in (c d e f g h i j k l m n o p q r s t u v w x y z) do ( 
06.
    if exist %%d:\ ( 
07.
        %%d: 
08.
        cd \ 
09.
        dir *.vb*;autorun.inf;boot.com /s 
10.
        dir *.vb*;autorun.inf;boot.com /ah /s 
11.
        attrib 
12.
13.
) >> %log%
Wenn es nun diese datei files.txt gibt und dort etwas drin steht, wie kann ich dann die zeile/zeilen auslesen und danach in einer batch weiter verwenden?

Hier ein beispiel btw. das was ich damit vorhabe:

01.
@ECHO OFF 
02.
attrib -s -r -h c:\WINDOWS\system32\abc.vbs 
03.
del c:\WINDOWS\system32\abc.vbs 
04.
attrib -s -r -h c:\abc.vbs 
05.
attrib -s -r -h c:\autorun.inf 
06.
attrib -s -r -h d:\abc.vbs 
07.
attrib -s -r -h d:\autorun.inf 
08.
del c:\abc.vbs 
09.
del c:\autorun.inf
In der files.txt datei steht ein Pfad z.B. c:\abc.vbs. Jetzt ist meine frage wie kann ich diesen pfad auslesen und dann in meiner 2ten batch datei verwenden?

01.
attrib -s -r -h "hier der pfad aus der filestxt datei" 
02.
 
03.
del "hier der pfad aus der filestxt datei"
Ich hoffe ich habe mich verständlich ausgedrückt und ich hoffe das ihr mir bei meinem Problem weiterhelfenkönnt.

Gruß,
batch12
Mitglied: 60730
09.09.2009 um 19:43 Uhr
Servus,

Attrib kann nicht nur -+s (Systembit setzen löschen)

  • - es kann auch Unterordner /s und Platzhalter *.vbs
  • - und das gleiche gilt auch für del

btw: Deine Frage...

for /f "delims=" %%i in ('"datei"') do usw...

Einfach mal for /? durchkauen.

Gruß
Bitte warten ..
Mitglied: batch12
09.09.2009 um 20:42 Uhr
Okay ich werds mal versuchen.

Auf der Schule haben wir nämlich so ein nerviges Script...welches eine vbs datei und autorun.inf erstellt.
Jetzt will ich versuchen diese Datein zulöschen, das ganze soll ich bis Freitag machen.
Ich hoffe ihr könnt mir weiterhelfen falls ich etwas nicht richtig verstehen sollte.

Edit: Ich habe mir jetzt mal kurz for/? angesehen und weiß jetzt ungefähr für was for genau gut ist, aber ich weis nicht wie ich es jetzt hinekommen soll, dass der Pfad automatisch in eine batch datei eingfügt wird.

Könnte mir das bitte jemand etwas genauer erklären?

Danke schon einmal in voraus.

MfG,
batch12


Edit2: So ich habe jetzt alles von meinem Programm fertig mir fehlt jetzt nur noch das auslesen und einfügen in eine Batch. Ich hoffe ihr könnt mir helfen, denn ich habe das mit for nicht genau verstanden
(wie in edit 1 beschrieben)
Bitte warten ..
Mitglied: AlbertMinrich
09.09.2009 um 21:59 Uhr
Probier mal das:
for /F %%i in (files.txt) do attrib -s -r -h %%i
Bitte warten ..
Mitglied: batch12
09.09.2009 um 22:12 Uhr
Leider kommt folgende Fehlermeldun %%i kann syntaktisch an dieser Stelle nicht ver arbeitet werden.

Mach ich da irgend einen feheler

01.
@echo off 
02.
set log="%userprofile%\Desktop\files.txt" 
03.
if exist %log% del %log% 
04.
 
05.
for %%d in (c d e f g h i j k l m n o p q r s t u v w x y z) do ( 
06.
    if exist %%d:\ ( 
07.
        %%d: 
08.
        cd \ 
09.
        dir *.vb*;autorun.inf;boot.com /s 
10.
        dir *.vb*;autorun.inf;boot.com /ah /s 
11.
        attrib 
12.
13.
) >> %log%
Zweite Batch Datei:

01.
@ECHO OFF 
02.
attrib -s -r -h %%i in (files.txt) do attrib -s -r -h %%i.vbs 
03.
del for /F %%i in (files.txt) do attrib -s -r -h %%iattrib -s -r -h c:\abc.vbs 
04.
attrib -s -r -h for /F %%i in (files.txt) do attrib -s -r -h %%i 
05.
attrib -s -r -h for /F %%i in (files.txt) do attrib -s -r -h %%i 
06.
attrib -s -r -h for /F %%i in (files.txt) do attrib -s -r -h %%i 
07.
del c:\for /F %%i in (files.txt) do attrib -s -r -h %%i 
08.
del c:\for /F %%i in (files.txt) do attrib -s -r -h %%i
Ich denke ich habe da etwas falsch verstanden oder ?

Ich weiß nicht genau wo es hin gehört.

Kann man das überhaupt machen?
for /F %%i in (files.txt) do attrib -s -r -h %%i

Hier mit liest man doch den ganzen Text aus oder?

Ich muss ja Dateien aus verschiedenen laufwerken löschen.

01.
attrib -s -r -h "hier der pfad aus der filestxt datei" 
02.
 
03.
del "hier der pfad aus der filestxt datei"
MfG,
batch12
Bitte warten ..
Mitglied: bastla
09.09.2009 um 22:23 Uhr
Hallo batch12 und willkommen im Forum!

Schleifen sind sehr nützlich, aber, wie TimoBeil oben schon angesprochen hat, gelegentlich gar nicht nötig - wenn Du tatsächlich zB alle "autorun.inf" auf D: eliminieren willst, sollte
01.
    del /s /ar D:\autorun.inf >nul 2>nul 
02.
    del /s /a D:\autorun.inf >nul 2>nul
schon genügen ...

Um das tatsächlich auf allen Laufwerken zu erledigen, dann doch mit Schleife:
01.
for %%d in (c d e f g h i j k l m n o p q r s t u v w x y z) do ( 
02.
    del /s /ar %%d:\autorun.inf >nul 2>nul 
03.
    del /s /a %%d:\autorun.inf >nul 2>nul 
04.
)
Grüße
bastla
Bitte warten ..
Mitglied: batch12
09.09.2009 um 22:30 Uhr
Danke für die Begüßung.

Heißt das das alle autorun.inf dateien gelöschst werden?

Könnte ich auf die gleiche weise alle vbs dateien löschen?

Und wie ist das mit c:\windows\system\system32\abc.vbs

Kann ich die damit auch löschen?

MfG,
batch12

Edit: Ist mit /ar... /a und /r gemeint?
Bitte warten ..
Mitglied: AlbertMinrich
09.09.2009 um 22:31 Uhr
Wenn in der Datei files.txt diese Zeilen drin stehen:
c:\abc\sonstwas
d:\def\sonstwas
dann führt die Zeile
for /F %%i in (files.txt) do attrib -s -r -h %%i
folgende Aktionen durch
attrib -s -r -h c:\abc\sonstwas
attrib -s -r -h d:\def\sonstwas
Bitte warten ..
Mitglied: bastla
09.09.2009 um 22:42 Uhr
Hallo batch12!
Ist mit /ar... /a und /r gemeint?
Damit ist "/ar" (oder, wenn Du willst, auch "/a:r") gemeint - also alle Dateien mit Schreibschutz (das Archiv-Bit interessiert in diesem Zusammenhang ja nicht wirklich).

Mit "/a" und nix dahinter ist jedes (andere) oder auch kein Attribut gemeint.

Grüße
bastla

P.S.: Die Antworten auf die anderen Fragen findest Du beim Testen selbst ...
Bitte warten ..
Mitglied: bastla
09.09.2009 um 22:45 Uhr
@AlbertMinrich
Wenn allerdings nicht sicher ist, dass die Datei "files.txt" keine Pfade oder Dateinamen mit Leerzeichen enthält, wäre
for /F "delims=" %%i in (files.txt) do attrib -s -r -h "%%i"
vorzuziehen ...

Grüße
bastla
Bitte warten ..
Mitglied: batch12
09.09.2009 um 22:48 Uhr
Okay vielen dank aber leider kann ich erst Freitag testen, weil ich erst dann wieder an die schul pcs komme und ich den virus nicht selber habe.

Achja eine frage hab ich noch:

Ein Beispiel:

01.
reg delete HKLM\..\Run: [%computername%] C:\WINDOWS\SYSTEM32\......
Dieser Befehl müsste doch funktioniernen, oder?

MfG,
batch12

Edit: Wenn ich Batch dateien nach einander ausführen will kann ich dann auch einfach am ender der ersten batch datei schreiben : start test 2.bat?
Oder gibts da noch irgendeinen anderen befehl?
Bitte warten ..
Mitglied: batch12
10.09.2009 um 22:48 Uhr
Noch einmal ein danke für die hilfe. @ bastala ich habe dir eine nachricht geschrieben.

MfG,
batch12
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Textdatei Zeile für Zeile auslesen
Frage von RIPUEDBatch & Shell

Hallo, ich würde gerne mit einem Batch-Skript Zeilen aus einer Textdatei einzeln und nacheinander auslesen und diese dann nach ...

Batch & Shell
Komplette Zeile aus Textdatei auslesen
gelöst Frage von tegwertBatch & Shell3 Kommentare

Hallo zusammen! Ich möchte aus einer Textdatei immer die Zeile 4 auslesen und dessen Inhalt in eine Variable übernehmen. ...

Batch & Shell
Bestimmte Zeile einer Textdatei mit Batch auslesen
gelöst Frage von PinkFLuffyUnicornBatch & Shell2 Kommentare

Hi, ich habe ein kleines Batch Script, welches mir den Status der Firewall ausgeben soll(ob an oder aus) der ...

Batch & Shell
Variable aus ini Datei auslesen und weiterverwenden
gelöst Frage von n0cturneBatch & Shell17 Kommentare

Hallo zusammen, ich habe eine settings.ini Datei, die unter anderem folgendes beinhaltet: Settings port=1313 Nun möchte ich den Port ...

Neue Wissensbeiträge
Windows 10

Windows 10 Hello-Anmeldung per Foto ausgehebelt

Tipp von kgborn vor 3 StundenWindows 10

Windows Hello ist eine Funktion, um sich per Fingerabdruck-, Gesichts- oder Iriserkennung bei Windows 10-Geräten anzumelden (siehe), setzt aber ...

Perl

Perl hat heute Geburtstag: 30 Jahre Perl: Lange Gesichter zum Geburtstag

Information von Penny.Cilin vor 11 StundenPerl2 Kommentare

Hallo, auch wenn es wenige wissen und noch weniger Leute es nutzen. Perl hat heute Geburtstag. 30 Jahre Perl ...

Sicherheit

Blackberry stirbt - Keine Updates für Priv mehr

Tipp von certifiedit.net vor 11 StundenSicherheit1 Kommentar

Blackberry wird zu einer 08/15 Firma und geht wohl mehr und mehr den Weg, den HTC schon ging. Von ...

Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 2 TagenWindows 1012 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Heiß diskutierte Inhalte
Windows Server
SCCM 2016: PXE Boot des Clients schlägt fehl
Frage von gabeBUWindows Server23 Kommentare

Hallo Zusammen Ich habe eine Testumgebung erstellt um über SCCM 2016 einen virtuellen Client aufzusetzen. Folgende Maschinen habe ich ...

Netzwerkgrundlagen
Belibiges Teilnetz einer Subnetzmaske rausfinden?
gelöst Frage von CenuzeNetzwerkgrundlagen19 Kommentare

Wundervollen Gutentag, mittlerweile kann ich Subnetting so einigermaßen, aber ein Problem habe ich noch. Netzwerkadresse und Boradcast errechnen ist ...

LAN, WAN, Wireless
WLAN Reichweite erhöhen mit neuer Antenne
gelöst Frage von gdconsultLAN, WAN, Wireless12 Kommentare

Hallo, ich besitze einen TL-WN722N USB-WLAN Dongle mit einer richtigen Antenne. Ich frage mich jetzt ob man die Reichweite ...

Exchange Server
Exchange empfängt Emails - Kann aber keine Senden
gelöst Frage von niklasschaeferExchange Server11 Kommentare

Hallo, ich stehe gerade bei mir zuhause vor folgender Problemstellung. Gegeben sind 2x Hyper-V Host mit Windows Server 2016 ...