Kør to programmer samtidigt fra en batch-fil: Omdiriger output til tekstfil og vis på stdout

Hvordan kan to programmer køres samtidigt fra en batch-fil, hvor output fra det første program omdirigeres til en tekstfil, men output stadig vises på stdout?

For at køre to programmer samtidigt fra en batch-fil, hvor output fra det første program omdirigeres til en tekstfil, men stadig vises på stdout, kan du bruge kommandoerne: `@echo off`, `start "" cmd /c "program1.exe | tee output.txt"`, og `start "" program2.exe`.

Sådan kører du to programmer samtidigt fra en batch-fil, hvor output fra det første program omdirigeres til en tekstfil, men output stadig vises på stdout

For at opnå dette kan du bruge en kombination af kommandoer i din batch-fil. Følg nedenstående trin:

  1. Opret en batch-fil (.bat) med en teksteditor som Notepad.
  2. Brug følgende kommandoer i batch-filen:

@echo off
start "" cmd /c "program1.exe | tee output.txt"
start "" program2.exe

Her er en forklaring på, hvad hver del af kommandoerne gør:

  • @echo off: Forhindrer kommandoerne i batch-filen i at blive vist i kommandoprompten.
  • start "" cmd /c "program1.exe | tee output.txt": Kører program1.exe i en ny kommandoprompt. Output fra program1.exe omdirigeres til både stdout og en tekstfil ved hjælp af tee-kommandoen.
  • start "" program2.exe: Kører program2.exe i en ny kommandoprompt.

Bemærk:

  • Du skal have tee-kommandoen tilgængelig på dit system. tee er ikke en standardkommando i Windows, men du kan få den ved at installere Unix-værktøjer som GnuWin32 eller Git Bash.
  • Erstat program1.exe og program2.exe med de faktiske navne på de programmer, du vil køre.