0

ファイラーから共有名の CSV を生成するコードがあります。

これはタブ区切りの CSV であり、共有名のみであり、その他の詳細は含まれていません。

出力を取りたい:

010
2012 Comp
2012 Comp Plan Team

これを次のように置き換えます。

\\<filer>\010
\\<filer>\2012 Comp
\\<filer>\2012 Comp Plan Team

現在、私は次のものを持っています:

$Content = import-csv C:\temp\new.txt -Delimiter "`t"

Add-Member コマンドを使用して、新しいプロパティ/値を配列に追加できますか? それとも、これについて間違った方法で行っていますか?


コメントはこれまで素晴らしいものでした。ありがとうございます。これに別のポイントを追加するのを忘れていました。csv に別の列を追加する方法を考えていましたか? ファイラー名に厳密に。共有名とファイラー名の大量の csv を作成することを考えています。それで、それをどのように追加できるか知りたかっただけですか?

4

2 に答える 2

0

あなたが示したものがファイルの唯一のコンテンツである場合は、気にする必要はありませんImport-Csv。単に使用してGet-Contentください:

(Get-Content 'C:\temp\new.txt') -replace '^', '\\<filer>\'

上記は単に文字列の配列を生成します。これを 2 列の CSV にするには、いくつかのことを行うことができます。たとえば、文字列配列を同じ 2 つのプロパティを持つオブジェクトの配列に変換します。

(Get-Content 'C:\temp\new.txt') -replace '^', '\\<filer>\' |
  select @{n='Path';e={$_}}, @{n='col2';e={...}}

または文字列に追加,somethingして、配列を CSV に変換します。

(Get-Content 'C:\temp\new.txt') -replace '^', '\\<filer>\' -replace '$', ',...' |
  ConvertFrom-Csv
于 2013-07-23T18:29:20.190 に答える
0

Import-CSV ではありません。ただし、Get-ContentIMO を使用する必要があります。

$content = Get-Content C:\test.csv
$content | ForEach-Object { '\\<filer>\'+$_ } | Set-Content C:\new-Test.csv
于 2013-07-23T18:27:23.427 に答える