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

Dateien umbenennen (minitool)

Frage Entwicklung Batch & Shell

Mitglied: Soidberg

Soidberg (Level 1) - Jetzt verbinden

12.05.2007, aktualisiert 14.05.2007, 5832 Aufrufe, 6 Kommentare

Hallo liebe Kollegen,

ich bräuchte eine .bat (welch ein Wunder).

Zutaten:

Ein bissl temporäres VBScript + Batchcode

Aufgabe:

Die .bat soll ein VBScript erstellen. Mit diesem VBScript soll ein Eingabefenster erscheinen in dem ein Name angegeben werden kann.

Der Name wird an die .bat übergeben und diese benennt alle Dateien im selben Ordner um.

Beispiel:

looolz.part1.rar
looolz.part2.rar
looolz.part3.rar
looolz.part4.rar

zu:

wunschname_looolz.part1.rar
wunschname_looolz.part2.rar
wunschname_looolz.part3.rar
wunschname_looolz.part4.rar

Wobei *wunschname* die Bezeichnung darstellt die im vbScript eingegeben wurde, das Zeichen "_" dient als Trennzeichen.

Ablauf:

1) Ich lege die .bat in den Ordner in dem ich Dateien umbenennen möchte uns starte Sie. Die .bat erstellt ein VBScript das mich nach der Bezeichnung fragt.

2) Ich gebe die Bezeichnung ein und die .bat benennt alle Datein um.

3) Die temporäre VBScriptdatei wird wieder gelsöcht.

Hat da jemand gerade mal auf die schnelle die passenden Zeilen parat?

Anmerkung:

Da die .bat zu einer exe compiliert wird, soll die Eingabe über ein vbscript laufen und nicht über die cmd selber.

Nette Grüße

Soidberg
Mitglied: yashi
12.05.2007 um 14:42 Uhr
Hallo.

Ich kann zwar kein VB script, aber soweit ich dich richtig verstanden habe, könnte doch etwa sowas dein Problem lösen:

01.
@echo off 
02.
set "customstring=test" 
03.
 
04.
:: vb-script: exec thisbat.bat +param(customstring) ! 
05.
 
06.
cd /d %~dp0 
07.
for /f "delims=" %%f in ('dir *.rar /b') do ( 
08.
ren "%%~nxf" "%customstring%_%%~nxf" 
09.
)
Die Eingabe kann man also nicht im Programm realisieren ? (cin >> var)
Und schreibst du das Programm selber ?


mfg
Bitte warten ..
Mitglied: Soidberg
12.05.2007 um 20:26 Uhr
Es sollen nicht nur .rar´s umbenannt werden. Die .bat wird später mit dem Programm "Quick Batch Compile" zu einer .exe gewandelt.

Mit temporärem VBScript habe ich bisher gute Erfahrung gemacht, deshalb der Wunsch danach.

Gruß Soidberg
Bitte warten ..
Mitglied: bastla
12.05.2007 um 21:25 Uhr
Hallo Soidberg!

Wenn tatsächlich alle Dateien im Verzeichnis, in dem die Batchdatei liegt, umbenannt werden sollen, könnte das so aussehen:
01.
@echo off & setlocal 
02.
pushd %~dp0 
03.
set "Eingabe=%temp%\Eingabe.vbs" 
04.
echo WScript.Echo InputBox("Bitte den neuen Namen eingeben!", "Fenstertitel", "Default")>"%Eingabe%" 
05.
for /f "delims=" %%i in ('cscript //nologo "%Eingabe%"') do set "Neu=%%i" 
06.
del "%Eingabe%" 
07.
for /f "delims=" %%i in ('dir /b /a-d^|findstr /v "%~nx0"') do ren "%%i" "%Neu%_%%i" 
08.
popd
Falls Du den Defaultwert "Default" (oder was auch immer passen könnte) für die Eingabe nicht benötigst, kannst Du ihn einfach (natürlich samt dem Komma davor) weglassen.

In der dargestellte Minimalvariante übernimmt das VBScript ohne weitere Kontrolle die Eingabe des Benutzers, diese kann also (zB bei Abbruch der Eingabe) auch leer sein (womit dann der neue Name sich nur durch das "_" am Anfang vom alten unterscheiden würde).

Die zweite "for"-Schleife ist nötig, um die Batchdatei selbst vor dem Umbenennen zu schützen, sonst ziehst Du Dir den Boden unter den Füßen weg ...

Grüße
bastla
Bitte warten ..
Mitglied: Soidberg
13.05.2007 um 01:52 Uhr
Hy und direkt vielen Dank.

Wäre es möglich das Script so zu verändern das wenn man auf Abbruch klickt auch die .bat zum Ende springt und nix verändert? Ansonsten ist es wohl perfekt.

So langsam fange ich an mich wirklich für Batch zu interessieren, hast Du da eventuell einen Tipp für passende Lektüre?

Gruß Soidberg
Bitte warten ..
Mitglied: bastla
13.05.2007 um 07:57 Uhr
Hallo Soidberg!

Füge nach del "%Eingabe%" ein:
01.
if "%Neu%"=="" goto :eof
... Tipp für passende Lektüre?
Forumsbeiträge/Tutorials hier , natürlich vor allem von Biber; ansonsten eigentlich nur, was sich sonst noch so im Web finden lässt ...

Grüße
bastla
Bitte warten ..
Mitglied: Soidberg
14.05.2007 um 13:25 Uhr
So, das war es auch schon.

Bastla´s Ausführungen funktionieren bestens.

@bastla

Vielen lieben Dank für diese Zeilen. Ja , das Forum hier ist schon klasse. Nur wenn ich etwas lernen möchte dann auch von der Picke auf. Muss mal schauen was es dafür so gibt..

Thema gilt somit als gelöst.

EDIT:

Wer interesse an der compilierten .exe hat, schreibt mir bitte eine PN.

Liebe Grüße Soidberg
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Microsoft Office
gelöst Per VBA im Verzeichniss dateien mit Wildcard umbenennen (4)

Frage von usenussi zum Thema Microsoft Office ...

Windows 7
gelöst Mehrere Dateien in Windows umbenennen mit Batchjob (4)

Frage von Jeduja zum Thema Windows 7 ...

Batch & Shell
gelöst Verschieben und Umbenennen von Video-Dateien anhand der Nummer im Namen (3)

Frage von Foja.Filmer zum Thema Batch & Shell ...

Batch & Shell
gelöst Dateien eines Ordners mit find welche 1234 im Namen haben umbenennen in x12345 (4)

Frage von reissaus73 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...