[Powershell]

rkrause

Mitglied
Möchte gern ein paar Batchskripte in Powershell portieren, leider treffe ich dort hin und wieder auf Probleme, die ich bisher immer noch selber lösen konnte ... wenn zwar nicht elegant, aber immerhin

Mein jetziges Problem:
Früher war mit Batch folgendes möglich, mit Powershell leider nicht
Code:
rem nur Laufwerksbuchstabe und Pfad
set Datei="%~d1%~p1"

rem setze Laufwerk+Pfad+Ordnername
set ordner="%~f1%\"

rem ~ni - erzeugt nur den Dateinamen von %i, ~xi - erzeugt nur die Dateierweiterung von %i
FOR /f "delims=" %%i in ("%Dateinamen%") do set datei_endung=%%~xi

Ich möchte gerne, von der aktuellen Datei, mal
- nur den Namen haben (ohne Erweiterung)
- mal nur die Erweiterung
- mal nur den Pfad.


Folgendes habe ich schon mit Powershell hinbekommen:

Dateien einlesen
Code:
$bigfiles = get-childitem $quell_verzeichnis -recurse -filter *.txt| % { $_.FullName }

Dateien in Datei schreiben
Code:
$bigfiles | Out-File $source_list -append


lezte Zeile aus Datei lesen
Code:
$global:source_file = Get-Content $source_list | Select-Object -last 1

gibt mir den Namen mit Endung der Datei
Code:
$source_file_rk = $source_file | Get-ChildItem -Name


Wie gesagt, suche nach ner Möglichkeit:
- nur den Name
- nur den Pfad
- nur die Erweiterung

in der Powershell auszuwerten

Danke im Voraus:)

EDIT: der Titel ist leider nich editierbar, vlt "[PS] Dateiname, Erweiterung, Pfad aus aktueller Datei auslesen" umbenennen
 
Zuletzt bearbeitet:
Hallo,

probier es mal so:
Code:
$fileinfo = $source_file | Get-ChildItem
$basename = $fileinfo.BaseName
$extension = $fileinfo.Extension
$directory = $fileinfo.DirectoryName

Grüße,
Matthias
 
Zurück