Kursor myszy zamienił się w „gruby plus”, nie może kliknąć, ale mysz może się poruszać

24

Mam Ubuntu 16.04. Ostatnią rzeczą, jaką pamiętam, kiedy pisałem na terminalu było import python to, że zostało to zrobione przez pomyłkę, a ja Ctrl+ Zpo zakończeniu tego procesu. Miałem pip uninstall monarymoże wcześniej.

Ale teraz mysz utknęła jako plus (wyobraź sobie plus wykonany z rogów 4 sąsiadujących kwadratów z bardzo niewielką przestrzenią pomiędzy nimi). Nie można kliknąć, ale kursor może poruszać się w dowolnym miejscu na ekranie. Próbowałem nawet myszy zewnętrznej, ale wynik jest taki sam.

Planuję zrestartować komputer i może to rozwiązać problem. Ale chcę wiedzieć, co to spowodowało, a jeśli to się powtórzy, co powinienem zrobić?

KugelBlitz
źródło

Odpowiedzi:

40

import to polecenie tworzenia zrzutu ekranu, dostarczone przez pakiet narzędzi ImageMagick.

Kiedy biegniesz

import something

jako polecenie powłoki wyświetli kursor celownika, aby wybrać prostokątny obszar ekranu do przechwycenia, a następnie zapisać go jako plik something.

Teraz nacisnąłeś Ctrl+ Z, który jest skrótem do zawieszenia procesu i powrotu do wiersza poleceń w Bash. Tak więc importnadal „działa” (niezupełnie - jest zawieszony, ale nadal istnieje) i nie miał szansy na wyjście lub przywrócenie kontroli nad myszą i ekranem.

Musisz kontynuować importproces, np. Rozmrażając go i przenosząc z powrotem na pierwszy plan powłoki za pomocą fgpolecenia Bash. Prawdopodobnie natychmiast zakończy działanie, w przeciwnym razie możesz zakończyć go za pomocą Ctrl+ C.

Możesz też po prostu zabić proces, zamykając okno terminala nadrzędnego / sesję Bash lub używając polecenia podobnego killall -KILL import.

Bajt Dowódca
źródło
6
Wow, proszę pana, jesteś genialny
Derek
Przez przypadek uruchomiłem skrypt Pythona jako powłokę (nie miał shebang), to rozwiązało problem. Dzięki.
jcubic
1
„exit -f” działa również, jeśli nie obchodzi cię zawartość bieżącego okna terminala.
jackw11111
Dzięki za rozwiązanie tego problemu. Ale teraz mam problem nadrzędny - chcę uruchomić skrypt Pythona z wiersza poleceń, ale uruchomi ImageMagick po trafieniu do instrukcji importu? Jak to obejść?
Tharpa
2
@Tharpa Albo musisz ręcznie uruchomić go za pomocą poprawnego interpretera (jak np. python3 path/to/my_script.py), Albo musisz upewnić się, że skrypt ma poprawny „shebang”, tzn. Pierwsza linia pliku zaczyna się #!od ścieżki do wymaganego interpretera ( dla Pythona 3 zwykle byś używał #!/usr/bin/env python3).
Bajt Dowódca
5

Przez większość czasu ten problem występuje z powodu konfliktu w importowaniu skryptów Pythona z poleceniem „importuj” Linuksa, napotkałem ten problem kilka razy i przyjąłem proste rozwiązanie.

type "bg" on your terminal
then "Cnt + c"
jax
źródło
3

Jeśli masz aktywną sesję terminalową. Możesz użyć polecenia bg, aby wrócić do ostatniego uruchomionego polecenia. Po przywróceniu procesu do terminalu po prostu zatrzymaj go, używając kombinacji klawiszy ctrl + c .

Jeśli sesja terminalowa nie jest aktywna , możesz zabić proces, używając ps -ax | grep „nazwa polecenia”, gdy masz już identyfikator procesu, możesz go zabić za pomocą polecenia, kill pid .

Prabhakar Jha
źródło