Come ricaricare un'applicazione con bash: utile per i client Twitter

Pubblicato da Nicola Rainiero il 08-09-2019

Se hai la necessità di aggiornare o ricaricare ogni volta una specifica applicazione che non ha questa funzione, puoi usare il mio script bash adattandolo alle tue specifiche necessità. Infatti ti permette di chiudere e ricaricare un'applicazione nella stessa posizione in cui l'avevi messa e dopo un intervallo di tempo specifico. L'ho scritta per aggiornare ogni 10 minuti i tweet di Corebird, un client twitter.

Perché ho creato questo script? Perché a partire dal 2018 Twitter ha rimosso l'API UserStream utilizzata da molti client di terze parti, tra cui Corebird, la mia applicazione preferita. Era una API vitale che veniva utilizzata per:

  1. far arrivare le notifiche push (ora non ci sono più);
  2. aggiornare la timeline dei tweet automaticamente.

Ovviamente ho provato altri client e una nuova finestra del browser Internet in cui ho caricato solo la pagina di Twitter ... ma il risultato è stato lo stesso: nessun aggiornamento automatico. Quindi ho scritto uno script bash per simulare un aggiornamento della timeline ogni 10 minuti. Semplice e indolore!

Come ricaricare un'applicazione con bash: utile per i client Twitter

Requisiti

L'unica applicazione che probabilmente devi installare è wmctrl1:

sudo apt-get update
sudo apt-get install wmctrl

Come funziona

Lo script in azione

Il mio script bash evita tale limitazione, perché si limita a chiudere l'applicazione ogni volta che è trascorso il tempo prefissato, quindi la ricarica nella stessa posizione, dimensione e spazio di lavoro se ce ne sono più di uno.

Quindi per farlo funzionare è necessario fornire tutti questi dati. L'installazione è semplice e lo spiego nella sezione successiva evidenziando il comando suggerito per completare ogni elemento richiesto.

Configurazione

  1. avvia, sposta e ridimensiona la finestra dell'applicazione che desideri ricaricare in un intervallo di tempo specificato;
  2. modifica il mio script inserendo i tuoi dati, puoi usare il comando che precede l'elemento per avere l'output corretto:
    ## SETTINGS:
    # :~$ whereis application_name
    executable="/usr/bin/your_application_executable"
    # :~$ ps -u $USER |more
    process_name="your_application_process"
    # :~$ wmctrl -l
    program_name="your_application_name"
    # :~$ wmctrl -lG (in pixel)
    program_coordinates="2,x,y,width,height"
    # 0 if it is in the first workspace
    workspace_number=0
    # in seconds
    interval=600
  3. salva il file, rendilo eseguibile2 e lancialo da un terminale o rendilo avviabile automaticamente dal tuo window manager.

Download

Scarica lo zip o il file dal mio repository in GitHub: rainnic/bash-scripts

  • 1. wmctrl è un comando che può essere utilizzato per interagire con un gestore X Window compatibile con le specifiche EWMH / NetWM. wmctrl può richiedere informazioni al gestore delle finestre e può richiedere che vengano intraprese determinate azioni di gestione delle finestre. Fonte: https://linux.die.net/man/1/wmctrl
  • 2. Per rendere eseguibile un file di testo, puoi utilizzare questo comando: “chmod +x refresh_app.sh”

TAG


Potrebbero interessarti anche:

Nicola Rainiero

Ingegnere civile specializzato in geotecnica con l'ambizione di facilitare la propria attività lavorativa usando e creando software libero per un sapere condiviso e collettivo. Mi occupo anche di energie rinnovabili ed in particolare di geotermia a bassa entalpia. Sono da sempre appassionato di web design e modellazione 3D.

Aggiungi un commento

Il contenuto di questo campo è privato e non verrà mostrato pubblicamente.

Plain text

  • Nessun tag HTML consentito.
  • Indirizzi web ed indirizzi e-mail diventano automaticamente dei link.
  • Linee e paragrafi vanno a capo automaticamente.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.