我创建了一个批处理文件,用于在用户计算机上运行工具安装。我想能够跟踪运行它的用户,以及他们运行它的时间。你能在实际文件中写规格吗?日志会记录用户的计算机ID和时间戳吗?
%DATE%
、%TIME%
、%USERDOMAIN%
和%USERNAME%
都是可以使用的自动变量。
类似于echo|set/p="%DATE% %TIME% - %USERDOMAIN% - %USERNAME%" && echo; >> log.txt
的东西可以实现你想要的。
我喜欢使用echo|set/p=""
,因为带引号的字符串不太可能引起问题,比如%USERNAME%
或%USERDOMAIN%
包含的字符会导致cmd认为echo命令在应该结束之前就结束了。&& echo;
会创建换行符。
只需将需求添加到第一行中,并确保在记录之前退出
@echo off &Title "%~0" &echo Run %date%%time% by %userprofile%>>"%~0"
rem Your main task goes here
exit /b
Logging starts here
Run 2021-12-23 1:12:02.25 by C:UsersK