trochę podchwytliwe. Jak mogę poprawnie uniknąć następujących w pliku wsadowym?Uciekając plik wsadowy echo, który rozpoczyna się ukośnikiem i znakiem zapytania
echo /? display this help text
Ta szczególna kombinacja znaków jest traktowana jako "ECHO /?" polecenie:
C:\Batch>ECHO /? display this help text
Displays messages, or turns command-echoing on or off.
ECHO [ON | OFF]
ECHO [message]
Type ECHO without parameters to display the current echo setting.
Nie reaguje na ucieczkę (^), tj. Próbowałem^/?/^? i ^/^ ?.
Uwaga: Jako obejście, stwierdziliśmy, że wstawienie innych znaków pomiędzy wystarczy ominąć procesor wiersza komend echo, np
echo ... /? display this help text
Mimo to, to nie jest idealne, a ja zastanawiałem się, czy nie było sposób na osiągnięcie pożądanej wydajności, a mianowicie za pomocą /? na początku echo wiadomości.
Dzięki! To działa, a nawet można go wypełnić spacjami. – Mykro
'echo.' Zawsze uzyskuje dostęp do dysku, i kończy się niepowodzeniem z wyjściami takimi jak 'echo. \ .. \ mybat.bat' (jeśli plik mybat.bat istnieje w bieżącym katalogu) – jeb
@Jeb: bardzo interesujące. –