3テラバイト

プログラム関連備忘録サイト。主にゲーム。

PowerShell

PowerShellで特定ディレクトリのファイル内文字列を置換する

投稿日:

Get-ChildItem . | ForEach-Object {Get-Content -Encoding utf8 $_ | ForEach-Object {$_ -creplace 'br', '`r`n'} | Out-File -Encoding utf8 "..\output\$_" }

コード解説

Get-ChildItem .

Get-ChildItemコマンドレットでカレントディレクトリのファイルリストを取得

ForEach-Object {}

1つ目のForEach-ObjectコマンドレットではGet-ChildItemコマンドレットで取得したリストを受け取り、その各アイテムを処理します。

Get-Content -Encoding utf8 $_

ForEach-Objectで取得した各アイテムの内容をGet-Contentコマンドレットで取得します。

ForEach-Object {}

2つ目のForEach-Objectコマンドレットではファイルの内容を1行ごと取得します。

中身の以下のコードでは各行に対してbrという文字列を改行コードに置き換える処理を行っています。

$_ -creplace 'br', '`r`n'

Out-File -Encoding utf8 “..\output\$_”

Out-Fileコマンドレットで置換後のファイルをカレントディレクトリの一つ上のディレクトリにあるoutputフォルダに同じファイル名で出力します。

-PowerShell


comment

メールアドレスが公開されることはありません。

関連記事

no image

PowerShellでコマンドのあるパスを取得する

確認環境 PowerShell 5.1 コマンドのパスを取得する Get-Commandコマンドレットにコマンド名を渡すと、Source列にてそのコマンドのパスが確認できます。 PS C:\Users …

no image

PowerShellで現在の文字セットを確認&変更する方法

確認環境 PSVersion 5.1.18362.1171 文字セットを確認 以下のようにchcpコマンドを使用すると、現在のコンソールで設定されている文字セットを表す数値である、コードページが確認で …

no image

PowerShellでファイル名から拡張子を除いたファイル名を取得する

こんにちは、今日はPowerShellでファイル名から拡張子を除いたファイル名を取得する方法についてまとめていきます。 確認環境 PSVersion 5.1.18362.1110 拡張子を除いたファイ …

no image

PowerShellで関数を定義する方法

定義方法 引数なし 引数なしの関数は以下のように定義します。中かっこの中に任意の処理を記述します。 function Test-Func { Write-Host Hello World } 実行する …

no image

UnityでPowerShellの実行結果を取得する

以下の例ではGet-ChildItemコマンドレットを引数なしで実行、標準出力への出力をDebug.LogでUnityコンソールに出力しています。 System.Diagnostics.Process …