• Opret dig
  • Glemt adgangskode

User account menu

  • Artikler
  • Forside
  • Forum
  • Nyheder
  • Log ind
Hjem
LinuxIN.dk

Snak med

Opret dig!

Af marlar | 17.08.2011 13:38

xkill-lignende program som slår alle processer fra samme program ihjel?

Software
Jeg havde lige en masse pdf-dokumenter åbne som jeg ikke gad lukke enkeltvist, så jeg kørte en pkill evince i terminalen.

Så tænkte jeg på om der mon findes et program i stil med xkill hvor man holder musen hen over et givent vindue og får muligheden for at lukke alle vinduerne (processerne) i stedet for bare det under musemarkøren?
  • Log ind eller opret dig for at tilføje kommentarer

Kommentarer23

# 1

13 år 10 måneder siden

Permalink

Indsendt af Looop den 17. august 2011 kl. 15:10

Permalink

Hvad kører du med som DE

Hvad kører du med som DE for er det ikke indbygget i Gnome3 || Gnome Shell
  • Log ind eller opret dig for at tilføje kommentarer

# 2

13 år 10 måneder siden

Permalink

Indsendt af marlar den 17. august 2011 kl. 15:14

Permalink

Jeg bruger den almindelig

Jeg bruger den almindelig Gnome --- hvad den så end hedder!

Men hvordan fungerer det i Gnome3? Måske det også virker her...
  • Log ind eller opret dig for at tilføje kommentarer

# 3

13 år 10 måneder siden

Permalink

Indsendt af stizzel den 17. august 2011 kl. 15:21

Permalink

Ud fra den her:

Ud fra den her: http://www.x.org/archive/X11R7.5/doc/man/man1/xkill.1.html
Ser det ud som om du kan -all option

men er dog ikke sikker
  • Log ind eller opret dig for at tilføje kommentarer

# 4

13 år 10 måneder siden

Permalink

Indsendt af marlar den 17. august 2011 kl. 16:16

Permalink

xkill -all virker desværre

xkill -all virker desværre ikke
  • Log ind eller opret dig for at tilføje kommentarer

# 5

13 år 10 måneder siden

Permalink

Indsendt af frogmaster den 18. august 2011 kl. 23:21

Permalink

xkill -all virker

#4: xkill -all virker desværre ikke

Det gør den nemlig ikke. Man skal gentage kommandoen for alle process ID'erne. Det er hurtigere bare at genstarte, eller i hvert fald nemmere.
  • Log ind eller opret dig for at tilføje kommentarer

# 6

13 år 10 måneder siden

Permalink

Indsendt af marlar den 18. august 2011 kl. 23:57

Permalink

Njaa, det er såmænd

#5:

Njaa, det er såmænd hurtigt nok i terminalen, pkill xxx, men det kunne være snildt hvis det kunne gøres med et museklik.

Men hvordan ved xkill egentligt hvilken process der gemmer sig bag et vindue?
  • Log ind eller opret dig for at tilføje kommentarer

# 7

13 år 10 måneder siden

Permalink

Indsendt af frogmaster den 19. august 2011 kl. 00:55

Permalink

Men hvordan ved xkill

#6: Men hvordan ved xkill egentligt hvilken process der gemmer sig bag et vindue?

xkill slår ressourcens creator ihjel, der er angivet med nogle system variabler, så man ikke behøver at specificere PID eller ID, men hvordan det helt nøjagtigt fungerer, ved jeg ikke.

Men det er rigtigt, at pkill programnavn burde kunne slå alle processer ihjel,. Jeg mener bare at huske, at det ikke altid virker, og som man kan kontrollere ved at køre
pgrep -l programnavn, vistnok ...

Det er sjældent jeg bruger den, for det er efterhånden ikke så ofte jeg oplever at X er ustabil, så jeg har glemt nogle detaljer, og skulle det ske, så har X godt af en genstart eller bare en logoff. Der kan være andre processer der også bør genstartes.

Det er det samme i Windows, der hvis man dræber en process, kan komme ud for at systemet bliver endnu mere ustabilt, alt efter hvor vigtig den er for systemet m.v..

Edir:

Har lige prøvet med Chrome.

administrator@mint-11 ~ $ pkill chrome
administrator@mint-11 ~ $ pgrep -l chrome
22434 chrome
22439 chrome
22441 chrome
22580 chrome
23397 chrome
31628 chrome

Progammet lukker godt nok, men alligevel ikke helt.
  • Log ind eller opret dig for at tilføje kommentarer

# 8

13 år 10 måneder siden

Permalink

Indsendt af frogmaster den 19. august 2011 kl. 01:49

Permalink

Christ - Jeg var nødt til

Christ - Jeg var nødt til at genstarte efter pkill chrome. Det var ikke engang nok at logge af, for at slå chrome's processer ihjel ;).
  • Log ind eller opret dig for at tilføje kommentarer

# 9

13 år 10 måneder siden

Permalink

Indsendt af stizzel den 19. august 2011 kl. 02:11

Permalink

Prøv pkill -9 chrome

Prøv pkill -9 chrome ?
  • Log ind eller opret dig for at tilføje kommentarer

# 10

13 år 10 måneder siden

Permalink

Indsendt af marlar den 19. august 2011 kl. 10:04

Permalink

Det er rigtigt at pkill ikke

Det er rigtigt at pkill ikke altid skår processer ihjel, men de gange hvor den ikke har gjort det har killall eller bare kill heller ikke gjort det. For indadtil er jeg sikker på at pkill bare er en sammenkædning af pgrep og kill.

I øvrigt undrer det mig hvor det nogle gange er umuligt at slå en process ihjel med kill -9. I de tilfælde hjælper det som regel at genstarte X da den er moderprocessen.

Men i mit tilfælde var det nu ikke fordi et program hang, jeg havde bare fået åbne 10 pdf-vinduer og gad ikke lukke dem enkeltvist.

#7: xkill slår ressourcens creator ihjel, der er angivet med nogle system variabler, så man ikke behøver at specificere PID eller ID, men hvordan det helt nøjagtigt fungerer, ved jeg ikke.

Men igen, hvordan ved xkill hvilken creator der hører til et vindue. Med andre ord, hvordan laver den koblingen mellem en musekoordinat og et givent vindue? Som mangeårig windowsudvikler har jeg selv brugt sådanne funktioner et hav af gange, de ligger specificeret i win32 api'et. Men hvad hedder det tilsvarende api til Linux?
  • Log ind eller opret dig for at tilføje kommentarer

# 11

13 år 10 måneder siden

Permalink

Indsendt af dudsen den 19. august 2011 kl. 11:02

In reply to Det er rigtigt at pkill ikke by marlar

Permalink

x11

kig i man xprop og man xwiinfo. Jeg kender ikke c/c++ API'erne for Xwindows men de findes du kan evt kigge i xkill kildekode for pointere. X11 er fra dengang man faktisk dokumentede sine api'er og ikke ændrede dem hver anden uge ;-)

du kan finde PID med xprop og jeg vil gå ud fra at xkill gør noget tilsvarende altså den matcher en window resource(windowID) med et process id, og sender et TERM signal til det process ID

et fun fact omkring navnet X-windows er at det faktisk er ældre end MS varemærke på MS Windows, og altså ikke navngivet som en "klon" noget der forvirre mange ex windows folk.
  • Log ind eller opret dig for at tilføje kommentarer

# 12

13 år 10 måneder siden

Permalink

Indsendt af dudsen den 19. august 2011 kl. 11:35

Permalink

en løsning

Da jeg har en halvstille dag på arbejde idag og det er en feature jeg selv har halvmanglet er her en lidt halv klampet løsning


#!/bin/sh
mypid=`xprop |awk '/PID/ { print $3 }'`;
echo $mypid;
appname=`ps -e |grep $mypid |awk '{ print $4 }'`;
echo $appname;
killall $appname;

brug på eget ansvar, det er kun halvtested.
  • Log ind eller opret dig for at tilføje kommentarer

# 13

13 år 10 måneder siden

Permalink

Indsendt af marlar den 19. august 2011 kl. 11:57

Permalink

Da jeg har en

#12: Da jeg har en halvstille dag på arbejde idag og det er en feature jeg selv har halvmanglet er her en lidt halv klampet løsning

Sejt! Det virker sgu :-)

Jeg synes det er en af de allerstærkeste ting ved Linux at der findes et hav af små nyttige programmer der kan kædes sammen som her til at udføre stort set hvad som helst.

Det er virkeligt "Do one thing only, but do it well" filosofien.
  • Log ind eller opret dig for at tilføje kommentarer

# 14

13 år 10 måneder siden

Permalink

Indsendt af sunlock.dk den 19. august 2011 kl. 12:18

Permalink

kill -9 pid plejer også at

kill -9 pid plejer også at virke.
  • Log ind eller opret dig for at tilføje kommentarer

# 15

13 år 10 måneder siden

Permalink

Indsendt af marlar den 19. august 2011 kl. 12:29

Permalink

kill -9 pid plejer

#14: kill -9 pid plejer også at virke.

Ikke hvis du har læst hele tråden :-)
  • Log ind eller opret dig for at tilføje kommentarer

# 16

13 år 10 måneder siden

Permalink

Indsendt af bjerrk den 19. august 2011 kl. 13:54

Permalink

killall

Jeg synes nu også at killall -9 plejer at gøre tricket, hvis der ikke er tale om deciderede zombie-processer (jeg kan faktisk ikke mindes at det ikke har virket).
  • Log ind eller opret dig for at tilføje kommentarer

# 17

13 år 10 måneder siden

Permalink

Indsendt af marlar den 19. august 2011 kl. 14:00

Permalink

#14 og #16: Tråden handler

#14 og #16: Tråden handler om hvordan man lukker alle vinduer tilhørende et bestemt program med et klik med musen. Her hjælper killall ikke :-)
  • Log ind eller opret dig for at tilføje kommentarer

# 18

13 år 10 måneder siden

Permalink

Indsendt af bjerrk den 19. august 2011 kl. 14:20

Permalink

Jep

marlar: Det er jeg med på, det var en reaktion på din kommentar i #10 og frogmasters besvær med at dræbe processer.
  • Log ind eller opret dig for at tilføje kommentarer

# 19

13 år 10 måneder siden

Permalink

Indsendt af sunlock.dk den 19. august 2011 kl. 14:26

Permalink

marlar:
Den havde jeg ikke

marlar:
Den havde jeg ikke lige fanget.

Desuden er jeg vokset op med kill -9. Første gang jeg hørte om den var det som en fortælling om "jægeren som lærte sønnen at slå byttet ihjel" og det fangede mig :)
  • Log ind eller opret dig for at tilføje kommentarer

# 20

13 år 10 måneder siden

Permalink

Indsendt af marlar den 19. august 2011 kl. 15:16

Permalink

#18, #19:
Man skulle tro at

#18, #19:

Man skulle tro at kill -9 slog alt ihjel, men det hænder faktisk ret tit at den ikke gør det. Jeg har aldrig forstået hvorfor.
  • Log ind eller opret dig for at tilføje kommentarer

# 21

13 år 10 måneder siden

Permalink

Indsendt af dudsen den 19. august 2011 kl. 16:43

Permalink

unkillable processes

der er forskellige grunde
1: progammet er helt fubar, altså tingene er gået så galt at tingene er låst uden for det traditionelle user space, en sådan process kaldes også en zombie, og vil typisk ikke bruge nogen CPU tid overhodet
2: at der er et andet program, typisk init, der genstarter programmet. det er etc forkaringen på at f.eks. kill -9 X.org ikke helt virker som forventet processen dør fint nok den genopstår bare med et nyt pid.
  • Log ind eller opret dig for at tilføje kommentarer

# 22

13 år 10 måneder siden

Permalink

Indsendt af cb400f den 19. august 2011 kl. 21:35

Permalink

I KDE, hvis du har så mange

I KDE, hvis du har så mange vinduer åbne af et givent program at de grupperes i taskbaren, og de højreklikker på taskbar-entryen og klikker "luk", vil alle vinduerne blive lukket (altså med to klik).

Ville da tro at gnome2 gjorde det samme.
  • Log ind eller opret dig for at tilføje kommentarer

# 23

13 år 10 måneder siden

Permalink

Indsendt af sv-erik den 20. august 2011 kl. 17:44

Permalink

Er man helt på skideren

#6:
Er man helt på skideren kan
kill -- -1

lukke alle ens processer og genstarte X så man atter står til login, men den sletter alle processer for den bruger som fyre den af, så ikke smart at gøre det som root.


EDIT
Hvis det kan bruges kan du jo lave et script og putte den i, og så lave det som en genvej på din desktop, en pænt hurtig måde at logge af på, ha ha
  • Log ind eller opret dig for at tilføje kommentarer

Svar søges

Gode anmeldelser Zorin OS 17.3 0
llumos Unix-operativsystem, 0
Den er go 0
14. februar = I Love Free Software Day 0
Lokal fil-deling - for de dovne. 0

Seneste aktivitet

"Intet realistisk alternativ" - mig i r*ven 11
Ingen Mint 5
Linux App Store Flathub når 3 milliarder downloads 2
Digitaliseringsministeriet sætter gang i pilotprojekt om digital suverænitet 3
Mest sikker webbrowser 5
Firefox 2
Privatbeskeder 7
Backup/synkronisering? 3
BigLinux 5
Chatgpt satire 1
Læsning af databasefil i Firefox 2
Vanilla OS 15
Pepsi Challenge 4
Linuxin er nu migreret til Drupal 11 13
Et Dansk alternativ til Facebook 18
Ekstern Blu-ray-brænder, der fungerer med PCLinuxOS 3
Københavns og Aarhus Kommune dropper MS 9
Open Source-eksperimentet 1
Microsoft og Google ud af de danske skoler 2
Udfordringer med lydin på Debian 12 1

© 2025 Linuxin og de respektive skribenter

Oprettet og drevet af nørder siden 2004 !