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

Substring ? Batch

Frage Entwicklung Batch & Shell

Mitglied: Antum-frischling

Antum-frischling (Level 1) - Jetzt verbinden

24.03.2014, aktualisiert 17:49 Uhr, 1534 Aufrufe, 5 Kommentare, 2 Danke

Guten Tag liebe Programmierer,

ich habe ein kleines Problem und zwar ich möchte von einem Datei die ersten 11 Zeichen übernehmen und wonaders hinzufügen

zb. 2014-03-24-HalloWelt.txt soll in OrdnerA verschoben werden und zu 2014-03-24-erledigt.txt umbenannt werden. Wie sieht so ein Code aus?

Hab hier mal ein Beispiel, wie es grundsätzlich geht, aber ich weiss nicht wie ich den Ordner Name angeben könnte. Man könnte es eventuell als ein variablen festlegen das der Pfad 2014-03-24-HalloWelt.txt machen, weil der Datei-Namen sich immer ändern wird, aber ich wüsste nicht wie sowas aussieht,

SET _test=123456789abcdef0

SET _result=%_test:~0,5%
ECHO %_result% =12345

komme einfach nicht weiter.

Kann mir da weiter helfen bitte

Mitglied: Endoro
24.03.2014 um 18:14 Uhr
Hey, zwei Beispiele:
01.
@ECHO OFF &SETLOCAL disableDelayedExpansion 
02.
SET "FName=2014-03-24-HalloWelt.txt" 
03.
SET "N1Name=%FName:~0,11%erledigt.txt" 
04.
ECHO %N1Name% 
05.
FOR /f "tokens=1-3delims=-" %%a IN ("%FName%") DO SET "N2Name=%%a-%%b-%%c-erledigt.txt" 
06.
ECHO %N2Name%
Für Hilfe siehe set /? und for /?.
Gruss Endoro.
Bitte warten ..
Mitglied: Antum-frischling
25.03.2014, aktualisiert um 11:21 Uhr
Vielen dank für deine Hilfe, soweit klappt es wunderbar, aber ich müsste es so um ändern, dass der die Datei Name verändert, es wird nur auf der CMD angezeigt.

die erste variante ist ein feste variable oder ?
von daher wäre die 2 möglichkeit am besten, weil der name sich immer ändern wird (datum)

dafür kann ich doch ren benutzten oder sieht dieser Befehl wieder anderes
Bitte warten ..
Mitglied: Endoro
25.03.2014 um 12:57 Uhr
Hey,
ja REN ist richtig:
01.
@ECHO OFF &SETLOCAL disableDelayedExpansion 
02.
CD /c X:\My Folder 
03.
FOR /f "delims=" %%x IN ('DIR /b /a-d *-*-*-*.txt') DO ( 
04.
	FOR /f "tokens=1-3delims=-" %%a IN ("%%~x") DO ( 
05.
		REN "%%~x" "%%a-%%b-%%c-erledigt.txt" 
06.
07.
)
Gruss Endoro.
Bitte warten ..
Mitglied: Antum-frischling
25.03.2014, aktualisiert um 16:20 Uhr
Vielen dank Endoro,

ich hätte noch eine letzte Frage, ich habe jetzt diese einfache Code genommen und kann ich bei diesem Code auch den Pfad angeben. zb

nehme den Pfad von D:\User\Guenni\OrdnerA\*.txt

hab den * genommen, weil die Zeichen vom Datum immer gleich lang sind und er soll einfach schauen, dass er einfach das mit dem txt-datei nehmen soll.

das wäre meine aktuelle Code
SET FName=2014-03-24-HalloWelt.txt
SET N1Name=%FName:~0,11%erledigt.txt

ren D:\Users\Guenni\Desktop\OrdnerA\2014-03-24-HalloWelt %N1Name%


und ich möchte sowas wie

SET FName=D:\Users\Guenni\Desktop\OrdnerA\*-HalloWelt.txt =>dort könnte morgen 2014-03-25 drin stehen oder eine anderes Datum
SET N1Name=%FName:~0,11%erledigt.txt

ren D:\Users\Guenni\Desktop\OrdnerA\2014-03-24-HalloWelt %N1Name%

wenn sowas nicht geht,dann würde ich auch eine andere alternative nehmen

Ich habe mal dein Code mal genommen und mit meine Sachen hinzugefügt


@ECHO OFF &SETLOCAL disableDelayedExpansion

cd /c D:\Users\Guenni\Desktop\Hey\

FOR /f "delims=" %%x IN ('DIR /b /a-d *-*-*-*.txt') DO (

FOR /f "tokens=1-3delims=-" %%a IN ("%%~x") DO (

REN "%%~x" "%%a-%%b-%%c-erledigt.txt"
)
)

pause

ich bin zu doof für batch :S irgendwie läuft da nichts :S
Bitte warten ..
Mitglied: Endoro
25.03.2014 um 17:10 Uhr
In der ersten For-Schleife werden mit dem Muster *-*-*-*.txt alle Dateien bearbeitet, die mindestens drei Striche und die Endung .txt haben. In der zweiten Schleife wird der (immer andere) Name ausenander genommen und anschliessend wieder zusammengesetzt und um "erledigt.txt" ergänzt. Du kannst die Dateien umbenannt auch gleich in einen Ordner verschieben:
01.
@ECHO OFF &SETLOCAL disableDelayedExpansion 
02.
CD /c X:\My Folder 
03.
FOR /f "delims=" %%x IN ('DIR /b /a-d *-*-*-*.txt') DO ( 
04.
	FOR /f "tokens=1-3delims=-" %%a IN ("%%~x") DO ( 
05.
		MOVE "%%~x" "Y:\FOLDER\%%a-%%b-%%c-erledigt.txt" 
06.
07.
)
Gruss Endoro.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
Batch zum bearbeiten mehrerer CSV (2)

Frage von Matzus87 zum Thema Batch & Shell ...

Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von Markus5579 zum Thema Batch & Shell ...

Batch & Shell
Dateinamen nach Zeichnen abschneiden - Batch-Shell (9)

Frage von cberndt zum Thema Batch & Shell ...

Batch & Shell
CMD Verschlüsslung ( Batch ) (11)

Frage von clragon zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (34)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...