Если путь, из которого вы запускаете это, НЕ является текущим путем сценария, выполните:
$path = 'D:\Downloads' # 'X:\SomeFolder\SomeWhere'
Set-Location $path
сначала.
Затем это должно сделать это:
Get-ChildItem . -Recurse -File | ForEach-Object {
"{0}`t{1:dd.MM.yyyy HH:mm}`t{2}" -f ($_ | Resolve-Path -Relative), $_.LastWriteTime, $_.Length
} | Out-File 'index.txt'
На Windows новая строка будет \r\n
(CRLF)
Если вы хотите контролировать это, это должно быть:
$newline = "`n" # for example
# capture the lines as string array in variable $lines
$lines = Get-ChildItem . -Recurse -File | ForEach-Object {
"{0}`t{1:dd.MM.yyyy HH:mm}`t{2}" -f ($_ | Resolve-Path -Relative), $_.LastWriteTime, $_.Length
}
# join the array with the chosen newline and save to file
$lines -join $newline | Out-File 'index.txt' -NoNewline
Потому что ваше требование НЕ иметь заголовков столбцов в выходном файле, я использую здесь Out-File
вместо Export-Csv