Wiersz polecenia zawiesza się do momentu naciśnięcia klawisza?


36

Problem:

Z jakiegoś powodu mój wiersz polecenia zawiesza się, dopóki nie nacisnę losowego klawisza, i będzie kontynuował działanie, jakby nic się nie wydarzyło.

Występowanie:

Dzieje się tak, gdy uruchamiam długą operację (taką jak kompilacja / kompilacja kodu). Kiedy się zawiesza, nie wskazuje, co się dzieje, ani nie każe mi naciskać żadnego klawisza.

Opis:

  1. Po kilku minutach terminal przestaje drukować postęp i blokuje się.
  2. Myślałem, że po prostu utknął na bardzo długim etapie kompilacji, ale po kilku godzinach wciąż utknął w tym samym miejscu.
  3. Nacisnąłem losowy klawisz, który nagle odskoczył prosto i kontynuował wyrzucanie wskaźników postępu i kontynuował pracę.

Następnie podobne zdarzenia zdarzały się wiele razy podczas długich procesów, takich jak kopiowanie plików.

Stało się tak na wielu urządzeniach z systemem Windows 7. Wystąpiło to również na Ubuntu przy użyciu powłoki bash.


2
Któraś z tych maszyn w ogóle spała?
Windos

Nie, maszyna nie idzie spać, tylko terminal najwyraźniej. Maszyny również nie mają włączonych trybów uśpienia ani niskiego poboru mocy. I nigdy nie przeszedłem w tryb uśpienia przez całe życie (odkąd je kupiłem / zbudowałem)
Razor Storm

Wygląda na to, że masz ten sam problem z dwóch zupełnie różnych środowisk (Linux i Windows). Więc możesz zapytać, co te dwie rzeczy mają ze sobą wspólnego? Czy to ten sam skrypt / kod? Kopiujesz na ten sam serwer?
Nixphoe,

Działo się to wiele razy w ciągu kilku lat w zupełnie innych zadaniach. Niektóre rzeczy, które zrobiłem, które pamiętam: tworzenie kompilacji w pracy, kopiowanie niektórych plików lokalnie (robocopy w systemie Windows i cp w systemie Linux), rsync na zdalnych serwerach, uruchamianie skryptów wsadowych itp.
Razor Storm

Odpowiedzi:


25

Wystąpił ten sam problem. Odpowiedzi tu i tutaj wskazują, że jest to prawdopodobnie problem z trybem szybkiej edycji w konsoli. Jeśli przechwyci przypadkowe kliknięcia myszą lub jeśli kliknięcia zostaną błędnie przekazane przez RDP, na przykład może przypadkowo wstrzymać skrypt. Możesz kliknąć pasek menu i edytować właściwości prawym przyciskiem myszy, aby wyłączyć tryb szybkiej edycji. To oczywiście utrudnia kopiowanie i wklejanie z okna CMD.


Mam wyłączony tryb szybkiej edycji i często tego doświadczam w węźle. Brak problemów z Linuksem. Ale Windows wydaje się zatrzymywać, dopóki nie naciśniesz klawisza C raz. Kontynuuje to proces węzła. Wygląda na to, że zabiłoby to proces, gdyby naprawdę wisiał.
edencorbin

Wyłączyłem tryb szybkiej edycji, więc będę miał oko. Moim rozwiązaniem jest zmiana rozmiaru mojego polecenia cmd lub nieco okna powłoki powłoki - aby skrypt kontynuował npm. Rzeczywiście bardzo dziwne.
shanehoban

1
Widziałem to od 20 lat w systemie Windows. Pojawił się i zniknął wiele razy ... Myślę, że jego Microsoft nie przeprowadza odpowiednich testów regresji, ponieważ przychodzi i odchodzi co kilka lat
rewolwerowiec
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.