Poniższy skrypt powinien potokować wyjście ping do pliku tekstowego
@echo off
rem end with ctrl+c y
ping 192.168.33.65 -t >> C:\_ScriptLog\Ping\ping.txt
ale nic nie jest przesyłane do pliku txt, jest puste.
EDYTOWAĆ:
Jeśli uruchomię to polecenie (bez echa i rem) bezpośrednio z cmd, to zadziała ...
-t
- czy to działa? Jeśli tak, to problem polega na tym, że dane wyjściowe nie są przekazywane, dopóki polecenie nie zostanie zakończone - za-t
pomocą polecenia nigdy się nie zakończy.Odpowiedzi:
Upewnij się, że plik jest zapisywalny. Otwórz go za pomocą Notatnika, wpisz coś i spróbuj zapisać.
Jeśli zapisywanie nie powiedzie się, musisz dodać uprawnienia do zapisu dla swojego konta. Można to zrobić we właściwościach pliku, zakładce Bezpieczeństwo .
(Pierwotnie zasugerowałem to w komentarzach, a OP potwierdziło, że to sprawca).
źródło
Czy dane wyjściowe z polecenia ping zmienią się na stderr, a nie na stdout ? Jeśli tak, to powinno działać:
źródło