J'ai un fichier de commandes (.BAT) et je voudrais capturer sa sortie dans un fichier automatiquement chaque fois qu'il est exécuté. Je sais que je peux utiliser la redirection, mais je ne serais pas capable de la regarder pendant qu'elle tourne. En outre, d'autres personnes utilisent ce fichier batch et je veux que le journal soit créé sans que l'utilisateur doive faire quelque chose de spécial.créer un journal à partir d'un fichier batch
2
A
Répondre
2
Té pour les fenêtres? http://www.chipstips.com/?p=129
2
Si vous êtes défavorable à télécharger ou installer tee
vous pouvez utiliser un sous-programme simple pour l'imiter:
rem log <message>
:log
echo.%*
1>>logfile.txt echo.%*
et puis juste sortie en utilisant call :log Some crazy message
. Cela ne fonctionne que pour vos propres messages, cependant, il ne fait rien avec les programmes que vous exécutez à partir de votre lot. Vous pourriez probablement le faire en introduisant un autre sous-programme:
rem runlog <program> <arguments>
:runlog
setlocal
set FN=%RANDOM%
1>%FN%.tmp 2>&1 %*
type %FN%.tmp
1>>logfile.txt type %FN%.tmp
del %FN%.tmp
endlocal
Est-il possible d'utiliser « tee » sans faire saisir l'utilisateur, il (ce qui signifie: ils courent juste mon fichier de commandes et le fichier batch appelle en quelque sorte « tee » automatiquement – JoelFan
@JoelFan: Oui, il y a un moyen simple: Utiliser un autre fichier batch (ou le même fichier batch en appelant lui-même avec des options différentes). –