Подтвердить что ты не робот

Использование разделения строк с символами табуляции в PowerShell 1.0

Я обрабатываю текстовый файл с разделителями-разделителями (ANSI) в powershell 1.0 и по какой-то причине я не могу разделить текст в файле на несколько полей с помощью функции split. Код ниже всегда возвращает 1, хотя в каждой строке файла есть 5 значений, разделенных вкладкой.

$f = get-content ‘users.txt’
foreach ($line in $f)
{
   $fields = $line.split('\t')
   $fields.count | Out-Host
}

Я тестировал раскол с другими разделителями, такими как труба, запятая, и это работало без проблем.

4b9b3361

Ответ 1

Вы используете неправильный escape-символ для вкладки. Вместо этого попробуйте:

$f = Get-Content "Users.txt"

foreach ($line in $f) {
    $fields = $line.Split("`t")
    $fields.Count | Out-Host
}

Ответ 2

(Get-Content -LiteralPath C:\temp\Users.txt) | ForEach-Object {$_.Split("'t")} | Set-Content -Path C:\temp\Results.txt