Incronin käynnistämän skriptin process id pitäisi saada selville. Skrpitissä on odotteluosuus mikä on toteutettu sleep-komennolla. Skripti pitäisi saada halutessa keskeytettyä, ja sitä varten tarvittaisiin PID. Kun skripissä tulostaa lokiin $$ saadaan PID, jota ei ainakaan "ps all" näytä lainkaan, vaikka skriptin suoritus olisi tuossa sleep-vaiheessa.
Vastaukset 4
- Anonyymi
Entäpä komento top?
- Anonyymi
En nyt aivan varma ole tästä, ratkaiseeko ongelmaasi, mutta /var/lock voi sisältää tällaisia tiedostoja:
-rw-r--r-- 1 user user 11 joulu 9 18:13 LCK..ttyS0
$ cat LCK..ttyS0
2437
$ ps axu | grep 2437
user 2437 0.0 0.0 12440 3452 pts/1 S 18:13 0:00 minicom -D/dev/ttyS0
Eli katkaisu onnistuisi vaikkapa lähettämällä -SIGHUP em. skriptille ja ottamalla se kiinni trap:lla, jolloin voisi tehdä vieläpä purkutoimet eli poistaa ainakin tuon lukkotiedoston.- Anonyymi
Ei tuolla näkynyt olevan kuin eiliselle päivätty "asound.state.lock", jonka sisältämää prosessinumeroa ei ole olemassa. Mutta probleemi ratkesi kyllä muuten, koska en ollut huomannut käyttää ps:n x:ää, siis näyttämään prosesseja joita ei ole liitetty terminaaliin. Eli on se prosessi olemassa, kun nyt uudelleen testailin.
Mutta tuli ehkä uusi ongelma. Se $$-arvo sisältää skriptin id:n, joka oli tässä tapauksessa 12797. Varsinainen odottelija eli sleep-komento pyörii taas id:llä 12802. Kun tapoin skriptin jäi tuo sleep edelleen käymään. No ehkä siitä ei ole haittaa ja häviää itsestään.
Homma edistyi joka tapauksessa, joten tattista vaan.
- Anonyymi
Miten olisi ps -C colord -o pid= Tässä esimerkissä tulostetaan värinhallinnan pid. vaihda tilalle halumasi prosessi.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 731157
- 711112
- 66916
- 95859
- 49747
Jasmin vauhdissa
Kyllä pitää Jassulla kiirettä, kun yhtenään menoa mun äidin, isäpuolen ja Markon kanssa Ossianin ollessa tietysti sulois245734- 25649
- 72649
- 54646
- 40590