Gå til innhold

Restarte et screen, eller drepe en prosess.


Anbefalte innlegg

Jeg kjører et screen som jeg vil skal restartes. Altså bare drepes også starte opp med det samme. Jeg har navnsatt screenet. Det heter "sms1". Det jeg driver med er en sms tjeneste som skal avsluttes etter en time. Det jeg også kan gjøre er og avslutte prosessen som kjøres i screenet. Så starter den opp av seg selv igjen. Problemet er at den får som sikkert mange vet tildelt PID. Og den endrer seg når den blir drept hver gang. Så en løsning er jo og navnsette prosessen. Men er det mulig? Altså drepe en prosess uten og bruke PID? Siden den samme prosessen kjører på samme maskin flere ganger så kan jeg ikke bruke navnet på filen til og avslutte prosessen for da går jo alt sammen på en gang. Hadde ikke det vært tilfelde, så hadde jeg gjort det.

 

Noen som har en god løsning på dette?

 

 

Takk for svar på forhånd! :)

Lenke til kommentar
Videoannonse
Annonse

Har tittet litt i manualet. Har du et eks. ved bruk av pgrep?

 

Jeg bruker killall når jeg skal ta og drepe prosesser ellers, men det blir vanskelig nå iom. at samme prosess kjører flere ganger, hvis ikke hadde det vært en løsning.

 

Et screen gjør at du kan starte en prosess. La den gå og evt. hente den opp igjen senere om du vil. Blir som og legge ned noe på startlinjen i Windows og la den stå og gå i bakgrunnen. Så kan du når som helst hente den opp igjen når du vil. :)

Endret av Fenalår
Lenke til kommentar

Du får nok se til å skrive noe ordentlig... Kjør PID'en inn i en variabel/fil, kanskje. Om du skal ha full kontroll kunne det jo vært en idé og gå ordentlig til verks med tråder og slikt... Har du planer om å ta betalt for dette ville jeg lagt ned såpass tid og penger at det fungerte, i det minste.

Lenke til kommentar

Eller om du er lat og ikke er kresen på så altfor stygge løsninger:

bruke ps til å få liste over prosesser | bruke grep til å velge ut kun instanser av det kjørende sms-programmet | bruke cut til å hente prosess-ID for hver av dem | bruke sort for å sortere | og deretter drepe den med lavest prosess-ID (som regel vil denne være eldst) ved å bruke kill. Alternativt sortere prosessene etter starttidspunkt, hvilket krever litt mer parsing (håndtere datoskifte etc), men gir mer robusthet (alltid riktig prosess som drepes). Det var bare en rask brainstorming.

Endret av kommers
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...