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

über batch nen text kürzen

Mitglied: extended

extended (Level 1) - Jetzt verbinden

28.11.2010 um 10:09 Uhr, 4244 Aufrufe, 5 Kommentare

Hi, ich habe folgendes Problem.

Ich habe eine Liste meiner pdf-Datein. (alle liegen in verschiedenen Ordner)
diese sieht ungefähr so aus:

c:\verschiedenes\12345\blabla.pdf
c:\verschiedenes\4r232\blub.pdf
c:\verschiedenes\2jd983\nocheine.pdf


Nun möchte ich aber nur die Ordner aufgelistet haben, also ungefähr so

c:\verschiedenes\12345
c:\verschiedenes\4r232
c:\verschiedenes\2jd983

also alle Zeichen in der Textdatei von .pdf bis zum ersten / löschen.


ist die über ein Batch-skript zu realisieren?
Mitglied: 90776
28.11.2010 um 11:01 Uhr
hallo

zuerst ein paar fragen

1. liegen alle ordner in c:\verschiedenes?
2. sind die ordnernamen immer gleich aufgebaut?
3. sind die dateinamen immer gleich aufgebaut?

Grüsse Switcher
Bitte warten ..
Mitglied: MiniStrator
28.11.2010 um 11:04 Uhr
Hallo,

dir /b /s *.>textdatei.txt

Dann hast du zwar ne neue Textdatei aber das wird wurscht sein?

Gruß
Bitte warten ..
Mitglied: 76109
28.11.2010 um 11:20 Uhr
Hallo extended!

Das ließe sich mit einem VB-Script (*.vbs) in etwa so machen (Pfad-Konstanten anpassen):
01.
Const ListeAlt = "C:\Test\Liste.Txt"		'Datei-Liste mit Dateipfaden 
02.
Const ListeNeu = "C:\Test\ListeNeu.Txt"		'Datei-Liste mit Verzeichnispfaden 
03.
 
04.
Dim Fso, File, Text, TextZeile, Folder 
05.
     
06.
Set Fso = CreateObject("Scripting.FileSystemObject") 
07.
     
08.
Set File = Fso.OpenTextFile(ListeAlt) 
09.
     
10.
Text = Split(File.ReadAll, vbCrLf):  File.Close 
11.
     
12.
Set File = Fso.CreateTextFile(ListeNeu) 
13.
     
14.
For Each TextZeile In Text 
15.
    Folder = Fso.GetParentFolderName(TextZeile)		 
16.
    If Fso.FolderExists(Folder) Then File.WriteLine Folder 
17.
Next 
18.
     
19.
File.Close
In der Codezeile 12 könnte anstatt (ListeNeu) auch (ListeAlt) stehen, wobei dann die bestehende List-Datei überschrieben wird.
Desweiteren, werden nur Verzeichnispfade aufgelistet, die auch tatsächlich existieren.

Gruß Dieter
Bitte warten ..
Mitglied: bastla
28.11.2010 um 12:32 Uhr
Hallo extended!

Ergänzend zu den obigen Vorschlägen eine "minimale" und eine "extended"-Variante in Batch:

Wenn Du mit dem "\" am Ende des Pfades und ev Dubletten im Ergebnis leben kannst, wäre die einfachste Möglichkeit (gleich direkt an der Kommandozeile einzugeben):
for /f "usebackq delims=" %i in ("D:\Liste Deiner PDF.txt") do @echo %~dpi
Um sowohl den "\" zu verhindern als auch im Ergebnis Mehrfachnennungen des Pfades zu vermeiden, wäre dann doch ein Batch erforderlich:
01.
@echo off & setlocal 
02.
set "Ein=D:\Liste Deiner PDF.txt" 
03.
set "Aus=D:\Liste der Ordner Deiner PDF.txt" 
04.
 
05.
::Ausgabedatei leer erzeugen (muss für "findstr" bereits existieren) 
06.
type nul>"%Aus%" 
07.
:: Schleife über alle Zeilen der Eingabedatei, 
08.
:: wobei der Pfad in der gleichnamigen Variable zwischengespeichert und 
09.
:: für jeden Pfad das eigentliche Verarbeitungs-Unterprogramm aufgerufen wird 
10.
for /f "usebackq delims=" %%i in ("%Ein%") do set "Pfad=%%~dpi" & call :ProcessLine 
11.
:: Ergebnis zur Kontrolle ausgeben 
12.
type "%Aus%" 
13.
:: Ende des Hauptprogrammes 
14.
goto :eof 
15.
 
16.
:ProcessLine 
17.
:: Wenn kein Root-Ordner, abschließenden \ abschneiden 
18.
if "%Pfad:~-2%" neq ":\" set "Pfad=%Pfad:~,-1%" 
19.
:: Falls die Ausgabedatei bereits den Pfad enthält, 
20.
:: kein Eintrag erforderlich und daher Rücksprung in das Hauptprogramm 
21.
findstr /i /x "%Pfad:\=\\%" "%Aus%">nul && goto :eof 
22.
:: Pfad der Ausgabedatei hinzufügen 
23.
>>"%Aus%" echo %Pfad% 
24.
:: Zurück zum Hauptprogramm 
25.
goto :eof
Grüße
bastla
Bitte warten ..
Mitglied: Biber
28.11.2010 um 15:16 Uhr
Moin extended.

keine Ahnung, ob das auch über ein Batchskript realisierbar wäre.

Ich würde es einfach über eine Halbzeile vom CMD-Prompt abfackeln.
Beispiel mit meinen *.pdfs im Verzeichnis d:\Biber\Dokus und darunter:
das führende ">" in der Eingabezeile ist Teil meines Prompts - nicht mit eingeben

(=15:15:43  d:\Biber\temp=) 
>for /r "d:\Biber\Dokus" /d %i in (*) do @if exist "%i\*.pdf" @echo %i 
d:\Biber\Dokus\BusinessObjects 
d:\Biber\Dokus\DB2 
d:\Biber\Dokus\ErWin 
d:\Biber\Dokus\Excel 
d:\Biber\Dokus\Links 
d:\Biber\Dokus\M$Scripting 
d:\Biber\Dokus\Oracle 
d:\Biber\Dokus\SQL 
d:\Biber\Dokus\ToolDoku 
d:\Biber\Dokus\VBS 
d:\Biber\Dokus\DB2\Addons_PDB 
d:\Biber\Dokus\DB2\Diverse addons 
d:\Biber\Dokus\M$Scripting\PowerShell_Workshop 
d:\Biber\Dokus\Oracle\Oracle-Tuts
Müsste auch mit einem Verzeichnis "c:\verschiedenes" klappen.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch kürzen, übersichtlicher machen
Frage von yazendBatch & Shell2 Kommentare

Guten Morgen zusammen, kann hier mal jemand "rüber schauen" da meine BATCH Kenntnisse nicht dafür ausreichen um diese eventuell ...

Batch & Shell
In Batch FINDSTR in Variable und auch noch kuerzen
gelöst Frage von deathwormBatch & Shell2 Kommentare

Hallo! Ich habe folgendes Problem. Beim verschluesseln von Festplatten wird ein Key generiert und dieser in eine TXT Datei ...

Batch & Shell
Batch: Auslesen von Dateinamen aus Text und Kopieren dieser.
gelöst Frage von gumpo03Batch & Shell2 Kommentare

Hallo. Ich sitze seit ungefähr einer Stunde an einem Problem, dass ich gern endlich lösen würde: Ich habe eine ...

Windows 7
Text filtern, mit Hilfe einer Batch Datei ?
Frage von meisterluehrsWindows 713 Kommentare

Hallo, ich bräuchte mal die Hilfe von ein paar "Experten" :D, die sich mit den Batch-Dateien, bzw der CMD ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 22 StundenLinux

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 FrankSicherheit26 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 ...

Windows 10
Automatische daten kopieren, USB zu USB unter Win10 im Hintergrund
Frage von DerEisigeWindows 1016 Kommentare

Hallo Leute, ich bin auf der Suche nach einem Skript, dass von einem USB Stick automatisch nach dem einstecken ...

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 ...