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 Frage zu Variable beim Dateinamen umbenennen

Mitglied: chainsaw

chainsaw (Level 1) - Jetzt verbinden

03.02.2010 um 15:29 Uhr, 5023 Aufrufe, 2 Kommentare

Hallo Gemeinde,

Ich bin da über was gestolpert, das ich nicht lösen kann.

Mit dem Schnipsel hier lösche ich die ersten vier Stellen
von Dateien die in C:\temp liegen:

01.
:start
02.
FOR /R "C:\Temp" %%i in ("*.*") do call :Tuwas "%%i"
03.
goto :eof
04.

05.
:Tuwas
06.
set "Alt=%~n1"
07.
set "T1=%Alt:~4,50%"
08.
ren %1 "%T1%%~x1"
Jetzt habe ich probiert, vorher abzufragen, wieviel Stellen denn gelöscht werden sollen:

01.
set /p var=Wieviel Stellen sollen geloescht werden?:
Gibt`s ne Möglichkeit, die Variable %var% in die Abfrage mit einzubauen? Folgendes funktioniert nicht
(vermutlich weil %var% dann ja innerhalb von zwei %-Zeichen steht ):

01.
set "T1=%Alt:~%var%,50%"
Gibts da eine andere Schreibweise (Hochkomma oder sowas) womit man das zum laufen bringt?

Schönen Tag noch
Gruß chainsaw
Mitglied: Biber
03.02.2010 um 16:14 Uhr
Moin chainsaw,

eine Möglichkeit der Umsetzung wäre der Weg über delayed expansion.
Dabei werden per SET definierte (=statische) Variablen in einer bestimmten (zeitlichen) Reihenfolge aufgelöst
[ statt -wie es Standard ist- alle "gleichzeitig" unmittelbar vor dem Ausführen der ganzen Befehlszeile.]

Dazu muss "Setlocal EnableDelayedExpansion" angesagt werden und dann die "verzögert" aufzulösenden Variablen als !variable! statt %variable% angesprochen werden.

Versuch es so:
01.
@echo off & setLocal EnableDelayedExpansion
02.
:start
03.
Set /p "DieLaenge=Bitte Länge eingeben: "
04.
:: ich gebe hier mal 2 oder 4 ein...auf jeden Fall eine Zahl....
05.
:: HIER FEHLT NOCH EINE PRÜFUNG AUF GÜLTIGE EINGABE
06.

07.
FOR /R "D:\Temp" %%i in ("*.txt") do call :Tuwas "%%i"
08.
goto :eof
09.

10.
:Tuwas
11.
set "Alt=%~n1"
12.
set "T1=!Alt:~%dieLaenge%,50!"
13.
Echo ren %1 "%T1%%~x1"
... ergibt z.B: bei Eingabe von "2" als DieLaenge
....
ren "D:\Temp\templogs\2005\2005logs.txt" "05logs.txt"
ren "D:\Temp\templogs\2006\2006logs.txt" "06logs.txt"
ren "D:\Temp\test\6343_test_1.txt" "43_test_1.txt"
ren "D:\Temp\test\6343_test_2.txt" "43_test_2.txt"
...
Grüße
Biber
Bitte warten ..
Mitglied: chainsaw
03.02.2010 um 17:13 Uhr
Hallo Biber,

Perfekt! Vielen Dank, wieder was gelernt...

Schöne Grüße
Chainsaw
Bitte warten ..
Neue Wissensbeiträge
Windows Server
Windows Backup - FilterManager Event 3
Tipp von NixVerstehen vor 7 StundenWindows Server

Hallo zusammen, ich bin kein gelernter ITler und auch beruflich nicht in dem Feld tätig. Wir setzen in unserem ...

Windows 10

Windows 10 - Programme laufen schneller, wenn Sie mit Administratorrechten ausgeführt werden

Erfahrungsbericht von 1Werner1 vor 1 TagWindows 1011 Kommentare

Moin, das wollte ich erst nicht glauben, aber es ist so. Wenn Ihr ein Programm mit Administratorrechten unter Windows ...

Sicherheits-Tools
Putty hat heftige Bugs korrigiert!
Information von Lochkartenstanzer vor 2 TagenSicherheits-Tools8 Kommentare

Moin, Wie man aus herauslesen kann, sind in den Versionen vor 0.71 gravierende Bugs, die es angeraten erscheinen lassen, ...

Off Topic
Sachen die die Welt nicht braucht - Platz 1
Tipp von brammer vor 5 TagenOff Topic21 Kommentare

Hallo, ich habs als Tipp angelegt als Erfahrungsbericht nein Danke brammer

Heiß diskutierte Inhalte
Hardware
Telefonanlagen - Welche gibt es
Frage von Xaero1982Hardware34 Kommentare

Nabend Zusammen, ich suche eine neue TK Anlage und mein Auftraggeber will jetzt was völlig neues - State of ...

Outlook & Mail
Office 365 mit Email-Profil installieren
Frage von Carat2121Outlook & Mail18 Kommentare

Hallo, kurz zu meiner Person: Vor ungefahr 10 Jahren habe ich eine Umschuldung zum Fachinformatiker für Systemintegration gemacht aber ...

LAN, WAN, Wireless
Intel(R) PRO Wireless 3945ABG
gelöst Frage von Leon509LAN, WAN, Wireless15 Kommentare

Hallo, habe ein Laptop Fujitsu (Intel, 4GB, 2GHz, Windos10, Intel(R) PRO/Wireless 3945ABG ) ein O2 DSL Anschluss Home50. Leider ...

Microsoft Office
Excel Such- und Vergleichsfunktion
gelöst Frage von oesi1989Microsoft Office15 Kommentare

Hallo zusammen, ich habe 2 Tabellen mit Name, Vorname und Arbeitgeber. 1. Tabelle Name Vorname Geb-Datum Arbeitgeber Straße Ort ...