Der Mauszeiger hat sich in ein "dickes Plus" verwandelt. Er kann nicht klicken, aber die Maus kann sich bewegen

24

Ich habe Ubuntu 16.04. Das Letzte, woran ich mich erinnere, als ich in das Terminal import python getippt habe, war, dass dies versehentlich gemacht wurde und ich Ctrl+ Zdanach, um diesen Prozess zu beenden. Ich hatte pip uninstall monaryvielleicht vorher.

Im Moment steckt die Maus jedoch als Plus fest (stellen Sie sich ein Plus aus Ecken von 4 benachbarten Quadraten mit sehr geringem Abstand dazwischen vor). Es kann nicht klicken, obwohl sich der Cursor überall auf dem Bildschirm bewegen kann. Ich habe sogar eine externe Maus ausprobiert, aber das Ergebnis ist das gleiche.

Ich plane, meinen Computer neu zu starten, und es könnte das Problem lösen. Aber ich möchte wissen, was das verursacht hat, und wenn es wieder passiert, was soll ich tun?

KugelBlitz
quelle

Antworten:

40

import ist der Befehl zum Erstellen eines Screenshots, der von der ImageMagick-Tool-Suite bereitgestellt wird.

Wenn du rennst

import something

Als Shell-Befehl wird ein Fadenkreuz angezeigt, mit dem Sie einen rechteckigen Bereich des Bildschirms zum Aufnehmen auswählen und als Datei speichern können something.

Jetzt haben Sie die Tastenkombination Ctrl+ gedrückt Z, um einen Prozess einzufrieren und zur Eingabeaufforderung in Bash zurückzukehren. Läuft importalso immer noch (nicht genau - es ist eingefroren, aber immer noch vorhanden) und hat keine Chance, die Kontrolle über Maus und Bildschirm zu beenden oder zurückzugeben.

Sie müssen den importVorgang fortsetzen, indem Sie ihn z. B. auftauen und mit dem fgBefehl Bash wieder in den Vordergrund der Shell bringen . Es wird dann wahrscheinlich sofort beendet, ansonsten können Sie es mit Ctrl+ beenden C.

Alternativ können Sie den Vorgang auch einfach abbrechen, indem Sie das übergeordnete Terminalfenster / die Bash-Sitzung schließen oder einen Befehl wie den folgenden verwenden killall -KILL import.

Byte Commander
quelle
6
Wow, Sie Sir sind ein Genie
Derek
Aus Versehen habe ich ein Python-Skript als Shell ausgeführt (es hatte keinen Shebang), dies hat das Problem gelöst. Vielen Dank.
jcubic
1
'exit -f' funktioniert auch, wenn Sie sich nicht um den Inhalt des aktuellen Terminalfensters kümmern.
Jackw11111
Vielen Dank für die Lösung dieses Problems. Aber jetzt habe ich das übergeordnete Problem: Ich möchte ein Python-Skript über die Befehlszeile ausführen, aber es startet ImageMagick, wenn es auf die import-Anweisung trifft. Wie komme ich darum herum?
Tharpa
2
@Tharpa Entweder müssen Sie es manuell mit dem richtigen Interpreter ausführen (wie z. B. python3 path/to/my_script.py) oder Sie müssen sicherstellen, dass Ihr Skript ein korrektes "shebang" hat, dh die erste Zeile der Datei beginnt mit #!gefolgt vom Pfad zum gewünschten Interpreter ( für Python 3 würden Sie normalerweise verwenden #!/usr/bin/env python3).
Byte Commander
5

Meistens tritt dieses Problem aufgrund des Konflikts beim Importieren von Python-Skripten mit dem Linux-Befehl "import" auf. Ich bin auf dieses Problem mehrmals gestoßen und habe mich für eine einfache Lösung entschieden.

type "bg" on your terminal
then "Cnt + c"
jax
quelle
3

Wenn Sie die Terminalsitzung am Leben haben. Sie können den Befehl bg verwenden , um zum zuletzt ausgeführten Befehl zurückzukehren. Sobald Sie den Prozess wieder in Terminal bekommen nur stoppen sie unter Verwendung ctrl + c .

Wenn die Terminalsitzung nicht aktiv ist, können Sie den Prozess mit ps -ax | beenden grep "befehlsname" Sobald Sie die Prozess-ID haben, können Sie sie mit dem Befehl kill pid beenden .

Prabhakar Jha
quelle