複数のサブディレクトリ内の複数のCSVファイルを読み込み、PowerShellスクリプトを使用してフィルターに基づいて行を削除しようとしています。PowerShellを使用して、特定の拡張子を持つすべてのファイルを複数のサブディレクトリから同じサブディレクトリ構造に移動します。
Get-ChildItem -Path J:\new -Recurse -Filter daq*.csv | ForEach-Object {
Get-Content $_.FullName | Where {
$_ -notmatch "serverTime"
} | Out-File $_.FullName
}
しかし、出力をソースファイルと同じディレクトリ構造にします。 ディレクトリ構造は以下の通りです:
root/ sub_dir1/ 1.csv 2.csv sub_dir2/ 1.csv 2.csv
は、私はそれを行うことができます方法はありますか?
あなたのスクリプトで何が起こっているか/起こっていないことを説明してください。それは何かをしますか?すべてのファイルが1つのフォルダに作成されていますか? – andyb
現在、同じディレクトリにファイルを作成していますが、元のファイル名を保持したいので、 '$ _。FullName'を渡しているので、元のファイルを空のファイルで上書きしています。 元のファイル自体を編集する方法があり、アウトファイルを作成しないのに何も見つからなかった場合は、インターネットで検索しようとしました –
元のファイルを置き換えますか? – andyb