Windows版teeコマンド

@echo off
if "%1"=="-a" (
  rem 最初の引数が-aであればファイルに追加書き込みするのでnulクリアはしない
  rem ファイル名を%1で取れるようにshiftする
  shift
) else (
  rem 指定されたファイルを空にする
  type nul > %1
)
rem 空行も出力する必要があるのでfindstrコマンドで標準入力の内容に行番号をつける
rem その結果、すべての行が1:XXXのようになる
rem :を区切り文字として2つ目以降の文字列を%%bとして認識する
for /f "tokens=1* delims=:" %%a in ('findstr /n "^"') do (
  rem 標準出力に出力
  echo.%%b
  rem ファイルに追加書き込み
  echo.%%b >> %1
)