2010-12-09 3 views
1

У меня есть файл one_to_many.txt. В файле есть данные:Разделение одного файла на многие с Powershell

a,aaa 
b,bbb 
c,ccc 

Я хочу использовать PowerShell для создания 3 файлов a.txt, b.txt и c.txt

a.txt Файл содержит данных «ааа», б содержать «БББ ...

Я новичок в Powershell и не может работать, как это сделать Спасибо

ответ

4

Одно из возможных решений:..

Get-Content one_to_many.txt | Foreach-Object { 
    $fileName, $content = $_ -split ',' 
    $content | Set-Content "$fileName.txt" 
} 

Get-Content считывает файл и возвращает строки один за другим. Каждая строка передается по трубопроводу на Foreach-Object, где к нему можно получить доступ как $_.

Вам необходимо разделить строку запятой, поэтому вызовите оператор -split, который возвращает в этом случае массив из 2 элементов. Назначение $filename, $content = .. приводит к тому, что содержимое первого элемента в массиве (от -split) присваивается $filename, а остальное - `$ content.

Затем просто сохраните это содержимое в файле через Set-Content