質問: バッチ出力でテキストを中央揃えにする方法は? さまざまなステップでさまざまなことを実行するバッチプログラムを実装しています。ステップごとに、次のような「わかりやすい」テキストヘッダーを表示します。************************************************************* * my first step * ************************************************************* 「myfirststep」は、さまざまな長さの変数です。私の質問:入力パラメータに表示する文字列ヘッダーとともにこの文字列を出力として返すことができるアルゴリズムまたは関数はありますか?前もって感謝します。よろしく
回答: アスタリスクで囲まれたパラメータを表示するバッチ文字列は次のとおりです。@echo off setlocal enabledelayedexpansion rem set the message to issue as second line set "msg=* %* *" rem calculate the length of the string set length=0 for /l %%a in (1,1,1000) do if "%msg%"=="!msg:~0,%%a!" ( set /a length=%%a goto :doit ) :doit rem create a string of asterisks of same length set header= for /l %%i in (1,1,%length%) do set "header=!header!* rem issue the message echo %header% echo %msg% echo %header% 実行すると次のようになります。