LoginSignup
0
0

More than 5 years have passed since last update.

1列に並んだ文字を任意の列数に改行するバッチ

Last updated at Posted at 2018-04-15

バッチファイルで改行をしなければなくなった

必要に迫られてテキストファイル内で1列に並んだテキストをバッチファイルを改行処理する必要があったのでそのバッチを書きます。

私の個人ブログでも詳細説明や様々なバッチを紹介しております。
こりんずネット

処理前のテキストファイルの中身

test.txt

testuser1
group1
group2
testuser2
group1
group2
testuser3
group1
group2

このtext.txtの中身を以下のように変換したい。

user1,group1,group2
user2,group1,group2
user3,group1,group2

バッチファイルの内容

setlocal enabledelayedexpansion

set /a count=1
for /f "tokens=1" %%A in (kaigyou.txt) do (
if !count! lss 3 (
set /p<nul="%%A," >> output.txt
set /a count=!count!+1
) else if !count! geq 3 (
echo %%A >> output.txt
set count=
set /a count=1
)
)

endlocal

行数を指定する場所

count変数の中の数値を見てifで改行するかどうかを判断しています。

if !count! lss 3 (

lssの後ろの数字を任意の数字に変更すれば任意の数に変更できます。
今回は3行のため3にしています。

) else if !count! geq 3 (

elseも3に合わせます。

詳しい説明は私の個人ブログで紹介しております。
こりんずネット

以上でした。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0