Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    [bash] intercettare apertura programma

    Ciao a tutti!!!
    C'è un modo per intercettare l avvio di un programma(evolution),e lanciare un'altro programma?
    E' possibile farlo con syslog?Se no come sarebbe possibile?

  2. #2
    up

  3. #3
    Utente di HTML.it L'avatar di ZannaZ
    Registrato dal
    May 2006
    Messaggi
    82

    Re: [bash] intercettare apertura programma

    Originariamente inviato da Pierissimo
    C'è un modo per intercettare l avvio di un programma(evolution),e lanciare un'altro programma?
    Potresti sostituire l'eseguibile del programma da sostituire (probabilmente /usr/bin/evolution, ma comunque per conoscerlo basta che dai "whereis evolution") con un link simbolico al programma che vuoi far partire al suo posto. Ricordandoti di fare un backup del file sostituito.
    Se ho capito la tua domanda.
    Magari posta il motivo per cui ti servirebbe fare una cosa del genere.
    Syslog invece non lo conosco, ma mi pare serva a tutt'altro.

  4. #4
    si in quel modo lo avevo già realizzato, ma speravo ci fosse un modo più "elegante" per risolvere la questione.
    In sostanza non faccio altro che lanciare una finestra grazie a zenity,per l inserimento di una password. E naturalmente se la password è corretta aprire evolution.

    Sostituire l'eseguibile non è una soluzione completa, basti pensare ad un aggiornamento del pacchetto, all'avvio di evolution da parte di un altro utente.

  5. #5
    Utente di HTML.it L'avatar di ZannaZ
    Registrato dal
    May 2006
    Messaggi
    82
    Originariamente inviato da Pierissimo
    Sostituire l'eseguibile non è una soluzione completa, basti pensare ad un aggiornamento del pacchetto, all'avvio di evolution da parte di un altro utente.
    Beh l'avvio da parte di un altro utente non dovrebbe cambiare le cose, visto che l'eseguibile è comune a tutti gli utenti.
    L'aggiornamento del pacchetto invece costituisce un problema.
    Non so, potresti provare ad impostare un alias (credo che in effetti questa sia la procedura più corretta):
    codice:
    alias evolution='/path/script_name'
    da mettere in ~/.bashrc se vuoi che valga solo per l'utente, in /etc/profile.bash per far sì che sia comune a tutti gli utenti.
    In pratica ogni volta che verrà eseguito il comando evolution, verrà in realtà lanciato il tuo script.

  6. #6
    non avevo pensato a questa soluzione, ho provato con l alias, ma il mio script viene lanciato soltanto quando apro evolution da terminale, da qualsiasi applicazione grafica invece (gnome-do, menu)
    viene richiamato l eseguibile normale.
    ho anche provato a inserire l'alias in .gnomerc ma il risultato è lo stesso!

  7. #7
    Utente di HTML.it L'avatar di ZannaZ
    Registrato dal
    May 2006
    Messaggi
    82
    Originariamente inviato da Pierissimo
    ho anche provato a inserire l'alias in .gnomerc ma il risultato è lo stesso!
    Hai riavviato dopo? Se sì, non saprei... magari è perché le applicazioni tipo gnome-do puntano direttamente all'eseguibile e allora il link simbolico è l'unica soluzione possibile credo.

  8. #8
    sisi sessione riavviata! ho controllato nei file .desktop del menu (quello a cui anche gnome-do fa riferimento), e non c'è il path completo, ma solo il comando evolution, quindi teoricamente dovrebbe funzionare.boh stranezze.
    L'idea originale era quella di intercettare l avvio di evolution, mettere l applicazione in sigstop, se l inserimento della password avveniva con successo continuare l applicazione,o mandare un sigkill altrimenti.
    Ma evidentemente mi devo rassegnare

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.