Batch-Datei, um festzustellen, ob die Eingabeaufforderung verwendet wird

8

Die letzte Zeile in meiner Batch-Datei ist pause . Gibt es eine Möglichkeit, eine if-Bedingung hinzuzufügen, um zu sehen, ob das Skript in der Eingabeaufforderung ausgeführt wird oder per Doppelklick ausgeführt wird? Ich möchte die Pause überspringen, wenn sie in der Eingabeaufforderung ausgeführt wird.

%Vor%

BEARBEITEN: Hoffe, eine Lösung zu finden, funktioniert in Windows Server 2003/2008, WinXP, Win7.

    
Stan 22.07.2011, 21:28
quelle

4 Antworten

6
%Vor%     
Aacini 23.07.2011, 00:11
quelle
1

Per Definition wird ein Shell-Skript immer in einer "Eingabeaufforderung" ausgeführt. Versuchen Sie es mit SESSIONNAME env var - es scheint NICHT vorhanden zu sein, wenn das Skript durch Doppelklicken gestartet wurde, anstatt es manuell von einer Eingabeaufforderung aus zu starten.

    
Marc B 22.07.2011 21:32
quelle
1

Ich weiß, dass dies ein Jahr später ist, aber für zukünftige Suchende können Sie

verwenden %Vor%

Es wird der Pause-Block übersprungen.

    
Bja 22.12.2012 14:25
quelle
0

Verwenden Sie den Befehl tty .

Verwenden Sie die Option -s und überprüfen Sie den Rückgabewert.

    
Ariel 22.07.2011 21:30
quelle

Tags und Links