バッチファイルにおいて、現在ログインしているユーザー名を取得できると、ユーザーごとにディレクトリを作成してデータを分ける等、便利なことが多いです。この記事では、Windowsのバッチファイルで現在のユーザー名を取得する方法を紹介します。
サンプルコード
以下のバッチファイルは、現在ログインしているユーザー名が格納されている環境変数%USERNAME%の内容をコンソールに表示します。
@echo off
echo Current user: %USERNAME%
pause
このスクリプトを実行すると、「Current user:」に続いて、現在のWindowsセッションにログインしているユーザー名が表示されます。
応用例:ユーザー固有のファイルパスの作成
この例では、ユーザーのDocumentsディレクトリの内容をdirコマンドで一覧表示します。
@echo off
set userDocumentsPath=C:\Users\%USERNAME%\Documents\
echo %userDocumentsPath%
dir %userDocumentsPath%
pause
まとめ
%USERNAME% は、ログファイルの保存場所をユーザーごとに設定したり、ユーザー名に基づいた条件分岐を行う際など、多岐にわたる用途で役立ちます。ぜひこのテクニックをご活用ください。