PS - Textdatei lesen - bestimmten Inhalt in Dateinamen schreiben
Hallo,
ich bräuchte mal Eure Hilfe zu folgendem Sachverhalt:
Eine Datei wird von meinem Programm mit Datum und Zeitstempel als .txt-Datei ausgegeben (Beispiel: 2411-20191216-1124.txt).
Ich möchte nun, dass automatisch (per Script oder Programm) die Datei durchsucht wird (Beispiel: Vertragsnr+00001).
Die Nummer 00001 soll nun automatisch, zusätzlich, in den Dateinamen geschrieben werden (Beispiel: 00001-2411-20191216-1124.txt).
Die originale Datei kann:
a) umbenannt werden
b) gelöscht und eine neue erstellt werden
Mir ist dazu erstmal nichts eingefallen, aber sicherlich gibts hier jemanden der mir helfen kann .
ich bräuchte mal Eure Hilfe zu folgendem Sachverhalt:
Eine Datei wird von meinem Programm mit Datum und Zeitstempel als .txt-Datei ausgegeben (Beispiel: 2411-20191216-1124.txt).
Ich möchte nun, dass automatisch (per Script oder Programm) die Datei durchsucht wird (Beispiel: Vertragsnr+00001).
Die Nummer 00001 soll nun automatisch, zusätzlich, in den Dateinamen geschrieben werden (Beispiel: 00001-2411-20191216-1124.txt).
Die originale Datei kann:
a) umbenannt werden
b) gelöscht und eine neue erstellt werden
Mir ist dazu erstmal nichts eingefallen, aber sicherlich gibts hier jemanden der mir helfen kann .
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 526173
Url: https://administrator.de/contentid/526173
Ausgedruckt am: 19.11.2024 um 01:11 Uhr
5 Kommentare
Neuester Kommentar
Beispiel: Vertragsnr+00001
Das sagt erst mal nicht viel, steht das da genau so da oder besteht der String "Vertragsnr" auch aus Zahlen, steht da das "+" auch so oder soll das nur hier als Verbinder fungieren??Wie @Kraemer schon sagt regex und Rename-Item, alles in allem ein Einzeiler, aber wie gesagt Regex muss entsprechend an die Gegebenheiten angepasst werden:
Get-ChildItem 'F:\Files' -File -Filter *.txt | ?{(Get-Content $_.Fullname -raw) -match 'Vertragsnr\+(\d+)'} | rename-item -NewName {"$($matches[1])_$($_.Name)"} -Verbose
Also ganz ehrlich, das wäre mir für ein Shell Script alles zu unsicher.
Für sowas würde ich mir mit .Net oder ähnlichen Programmiertools eine kleine Anwendung schreiben. Wenns da um Vertragsnummern geht sind das ja scheinbar sensible / wichtige Daten.
Sowas gehört in eine Datenbank mit entsprechenden Logfiles / Backups etc.
Für sowas würde ich mir mit .Net oder ähnlichen Programmiertools eine kleine Anwendung schreiben. Wenns da um Vertragsnummern geht sind das ja scheinbar sensible / wichtige Daten.
Sowas gehört in eine Datenbank mit entsprechenden Logfiles / Backups etc.