PowerShell小僧:テキストファイル出力時の改行を制御 [コンピューター]
テキストファイルに履歴を出力する際、Set-Content, Add-Contentを使用していたのですが、最終行に余計な改行が入るため、最終行の場合は、-NoNewLineオプションで改行しないようにしました。
【スクリプト(抜粋)】
switch ($myCNT1){
# 初回は新規書き込み
1{
if($myCNT1 -ne $myLine2){
Set-Content -Encoding UTF8 -LiteralPath $HistFile1 -Value $tmpStr1
}else{
# 最終行では改行しない(-NoNewline)
Set-Content -Encoding UTF8 -NoNewline -LiteralPath $HistFile1 -Value $tmpStr1
}
}
# 2回目以降は追記
Default{
if($myCNT1 -ne $myLine2){
Add-Content -Encoding UTF8 -LiteralPath $HistFile1 -Value $tmpStr1
}else{
# 最終行では改行しない(-NoNewline)
Add-Content -Encoding UTF8 -NoNewline -LiteralPath $HistFile1 -Value $tmpStr1
}
}
}
【参考】
https://www.webdevqa.jp.net/ja/powershell/setcontent%E3%81%AF%E3%80%81%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AE%E6%9C%80%E5%BE%8C%E3%81%AB%E6%94%B9%E8%A1%8C%EF%BC%88%E6%94%B9%E8%A1%8C%E3%80%81crlf%EF%BC%89%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%97%E3%81%BE%E3%81%99/832992273/
最終行以外 | 最終行 | |
1行目 | Set-Content | Set-Content -NoNewLine |
2行目以降 | Add-Content | Add-Content -NoNewLine |
【スクリプト(抜粋)】
switch ($myCNT1){
# 初回は新規書き込み
1{
if($myCNT1 -ne $myLine2){
Set-Content -Encoding UTF8 -LiteralPath $HistFile1 -Value $tmpStr1
}else{
# 最終行では改行しない(-NoNewline)
Set-Content -Encoding UTF8 -NoNewline -LiteralPath $HistFile1 -Value $tmpStr1
}
}
# 2回目以降は追記
Default{
if($myCNT1 -ne $myLine2){
Add-Content -Encoding UTF8 -LiteralPath $HistFile1 -Value $tmpStr1
}else{
# 最終行では改行しない(-NoNewline)
Add-Content -Encoding UTF8 -NoNewline -LiteralPath $HistFile1 -Value $tmpStr1
}
}
}
【参考】
https://www.webdevqa.jp.net/ja/powershell/setcontent%E3%81%AF%E3%80%81%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AE%E6%9C%80%E5%BE%8C%E3%81%AB%E6%94%B9%E8%A1%8C%EF%BC%88%E6%94%B9%E8%A1%8C%E3%80%81crlf%EF%BC%89%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%97%E3%81%BE%E3%81%99/832992273/
2021-11-29 22:53
ヤバイぜ!(11)
コメント(1)
ヤバイぜ! ありがとうございます(^_0)ノ
by cheese999 (2021-11-30 04:49)