改行しない出力
DOSコマンドで、好きな形式に「パスのコピー」する - Qiitaより
echo -n MESSAGE
相当の改行しない echo は
SET /P ="MESSAGE" < NUL
で実現できるようです。この SET は本来 SET /P VAR=PROMPT
という形式で、PROMPT を表示した後、ユーザが入力した値を環境変数 VAR に設定するコマンドですが、実は環境変数名は省略できます。さらに標準入力を NUL でリダイレクトすることで、ユーザ入力自体も素通りさせられるようです。無茶苦茶ですね。
複数行出力
初回は > で、二行目以降を >> で echo してもよいですが、何回もファイル名を書くとミスが発生する恐れがあります。まとめましょう
( echo (arxload "%ROOT%/hoge1.arx"^)
echo (arxload "%ROOT%/hoge2.arx"^)
echo (arxload "%ROOT%/hoge3.arx"^)
) > "%CADDIR%\hoge.scr"
- 複数の echo を丸括弧でまとめて、一つのリダイレクトで出力させることができる
- echo 中で丸括弧の閉じる方を出力する場合は
^
でエスケープする必要がある