Muni Bus

パソコンの操作方法や設定方法を忘れないようにメモしています。ブログを一回引っ越ししているので、所々表示がかなり乱れています・・・

【PowerShell】テキストファイルのすべての行の末尾に同じ文字列を追加する

ただ単に追加するだけであれば、Get-Contentコマンドレットの出力をパイプラインでForEach-Objectコマンドレット(エイリアス:%)に渡して、1行ずつ文字列を追加して、それをさらにパイプラインで次に渡せばよい。以下はあらかじめ用意しておいたテキストファイルseiyu.txt(全6行)のすべての行の末尾に特定の文字を追加して、それを別のテキストファイルに出力した例。2番目の例のとおり、追加の際に追加元の文字列を加工することもできる。

PS > Get-Content -Encoding Default seiyu.txt
   Machico
石見舞菜香
  優木かな
和多田美咲
野口瑠璃子
  会沢紗弥
PS > cat -Encoding Default seiyu.txt | % {$_ + ",ウマ娘"} | Out-File -Encoding default temp.txt
PS > cat temp.txt
   Machico,ウマ娘
石見舞菜香,ウマ娘
  優木かな,ウマ娘
和多田美咲,ウマ娘
野口瑠璃子,ウマ娘
  会沢紗弥,ウマ娘
PS > cat -Encoding Default seiyu.txt | % {$_.Trim() + ", ウマ娘"} | Out-File -Encoding default temp.txt
PS > cat temp.txt
Machico,ウマ娘
石見舞菜香,ウマ娘
優木かな,ウマ娘
和多田美咲,ウマ娘
野口瑠璃子,ウマ娘
会沢紗弥,ウマ娘