Wie man libreoffice von der Kommandozeile aus beendet

15

Ich benutze Ubuntu 12.04.4 LTS 64 Bit. Meine LibreOffice-Suite (insbesondere Writer) friert ein.

Wie kann ich LibreOffice töten und kann ich nur den Autor töten? (nicht die Calc, Impress, ..)

Ich habe versucht, den ausführbaren Prozess im Systemmonitor und in der Befehlszeile ( ps) zu suchen, habe ihn jedoch nicht gefunden.

EDIT : Ich möchte so etwas:

pkill -9 writer

Ich brauche eine Art verkürztes Kommando.

kamil
quelle

Antworten:

25

Erste Suche nach offenen libreoffice-Dateien:

ps aux | grep libre

Zum Beispiel ist die Ausgabe von mir:

hadi  21426  0.1  0.0 205328  3468 ?        Sl   14:17   0:00 /usr/lib/libreoffice/program/oosplash --writer
hadi  21445  9.8  0.7 1269272 179872 ?      Sl   14:17   0:01 /usr/lib/libreoffice/program/soffice.bin --writer --splash-pipe=6

dann

sudo kill -9 ID

Die ID ist die zweite Nummer für (soffice.bin), nicht für oosplash

so in meinem Beispiel:

sudo kill -9 21445

Sie brauchen professionelle Ok:

ps aux | grep -i office | awk {'print $2'} | xargs kill -9

hoffe das ist professionell in deiner bewertung !!

oder ein kleinerer Befehl

kill -9 `pgrep -lf soffice.bin | awk {'print $1'}`

oder mehr minified minified minified Befehl

pkill soffice.bin

BEARBEITEN:

Alle geöffneten Dateien von libreoffice verwenden dieselbe PID. Sie können zum Beispiel nicht einfach den Writer töten und impess halten.

Und um meine Sichtweise zu beweisen, ist das Wiederherstellungs-Tool in Office für alle Dateien einzigartig. Was ich meine, wenn Sie einen Writer auf eine wichtige Art und Weise schließen und dann beispielsweise einen Impress öffnen, fordert Impress Sie auf, die Writer-Datei wiederherzustellen, und dies hat dies getan, und dies beweist meine Antwort

Maythux
quelle
nein, wenn soffice beendet wird, werden alle libreoffice-programme beendet, wenn sie geöffnet werden, versuchen sie impress und writer zu öffnen und diesen prozess abzubrechen, es werden beide beendet, es ist ein übergeordneter prozess
nux
op muss nur den Schreiber töten, vielleicht benutzt er, um calc zu öffnen und mit dem Schreiber zu beeindrucken :)
nux
@nux Ja, das ist jemand, der mein Bedürfnis versteht
kamil
Du kannst es nicht machen. Alle geöffneten Dateien von libreoffice verwenden dieselbe PID.
Maythux
Öffnen Sie den Writer und beeindrucken und kalkulieren Sie und dann werden ps aux|grep officeSie feststellen, dass keine Einträge für andere als den Writer vorhanden sind. Da alle Dateien die gleiche PID erben.
Maythux
3

Du solltest es versuchen:

killall soffice.bin
user3193559
quelle
1

Verwenden Sie ps -ediese Option, um alle ausgeführten Prozesse aufzulisten (nicht nur die, die von Ihrem aktuellen Terminal erzeugt wurden). Sie können dann nach dem Namen suchen, nach dem Sie suchen (vielleicht "Schriftsteller" oder "Libre"). Wenn Sie den gesuchten Namen genau kennen ps -e | grep writer, können Sie die Ergebnisse nur für diesen Vorgang verwenden.

Sie sollten eine Zahl sehen, die die Prozess-ID (PID) ist. Um den Prozess abzubrechen, geben Sie ein, kill xwo xsich die PID des Prozesses befindet. Sie sollten eine Nachricht erhalten, die etwas in der Richtung von sagt killed 1 process. Wenn der Prozess noch läuft, versuchen Sie kill -KILL x, das Programm zum Beenden zu zwingen.

Hugo Buff
quelle
1
es funktioniert nicht mein lieber
kamil
Welches Stück hat nicht funktioniert?
Hugo Buff
ps -e | grep writergibt nichts zurück
kamil
1
Sie müssen nur ps -edie Namen verwenden und nach dem richtigen Prozess suchen. writerwar nur eine Vermutung.
Hugo Buff