2016-05-24 15 views
1

私は比較したいcsvファイルが2つありますが、import-csvコマンドレットを使用しようとすると、Powershellは正しく実行しません(ファイルごとに異なります)。違う)。トラブルシューティングの後、問題は両方のファイルが「#」で始まることに気付きました。これを削除すると、コマンドレットは正常に動作します。しかし、私はこの作業を行うたびにCSVをマッサージしたくありません。これを回避する方法はありますか?import-csv最初の文字としてハッシュタグ付きのコマンドレット

Import-Csv : The member "' '" is already present.At line:1 char:1 
+ import-csv("\\dshfs03.dgoz.dccz.ccnz\psst\Aram\RTCA Merge\ctvl.csv") 
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    + CategoryInfo   : NotSpecified: (:) [Import-Csv], ExtendedTypeSystemException 
    + FullyQualifiedErrorId : AlreadyPresentPSMemberInfoInternalCollectionAdd,Microsoft.PowerShell.Commands.ImportCsvCommand 

コマンドレットは、他のファイルで動作しますが、それは単にヘッダーとして二行目を残して、すべて一緒に最初の行をスキップします:ここで

はエラー1が私を与えるのです。

私はget-contentを使って最初に削除しようとしましたが、編集したファイルをエクスポートすると、それらは適切な形式になりません。

+1

サンプルコンテンツを追加してくださいそのファイルから実際の出力を記述します。 – vonPryz

答えて

1

あなたはとてもあなたのオプションがありImport-Csvの動作を変更することはできません。

  • プロセスファイル(などGet-Content-split、)自分
  • は、コード内の#を交換した後、Import-Csv/ConvertFrom-Csvを使用します
  • 先頭から正しくフォーマットされたファイルを使用してください。
+0

私はget-contentを使って編集しました。しかし、export-csvを使って編集したファイルをエクスポートすると、オブジェクトと長さだけからなるCSVファイルが残っています。私が実際に気にしていたデータはすべて消えてしまいました。私のcsvを編集し、フォーマット済みのCSV形式のデータをそのままエクスポートできますか? – Errorum

+0

まず、データを保管していたoutfileを使用して、CSVファイルを適切にフォーマットし直しました。エレガントな解決策ではありませんが、 – Errorum

+1

@ Errrorumで 'Out-File'にパイプし、' Import-Csv'を使用して、 'ConvertFrom-Csv'に直接渡し、中間ファイルを書く必要はありません。 – briantist

関連する問題