GNU/Linux >> Linux Esercitazione >  >> Linux

Modo per attivare una particolare scheda di Chrome tramite Bash?

Supponiamo, ad esempio, di avere una finestra di Chrome attiva con Gmail aperta da qualche parte tra le sue schede (ma non necessariamente la scheda attiva).

Domanda: C'è un modo per attivare la scheda Gmail dalla riga di comando?

Risposta accettata:

Sì. Attualmente lo faccio così:

1) dovrai installare jq per scherzare con i dati delle schede che verrai alimentato quando invochi lo script delle schede attualmente aperte in chromium.
dovrai inoltre installare chrome-remote-interface per svolgere il lavoro di attivando le schede da sfondo -> primo piano di cromo.

2) chromium deve essere in esecuzione con il debug remoto attivato. chiudi tutte le istanze di chromium ed esegui questo comando anziché solo chromium nel terminale altrimenti questo processo non funzionerà:

/usr/bin/chromium --remote-debugging-port=9222 &

3) usa questo script di base come esempio e salvalo come act , chmod +x e inseriscilo nella directory bin del tuo utente. Uso lo script bash per esempio, può essere trasferito se sei un utente zsh:

#!/usr/bin/env bash

TABS_JSON=$(chrome-remote-interface list | sed -e "s/^'//" -e "s/'$//" | jq -r 'map(select(.type == "page") | {id: .id, title: .title})')

if [[ -z [email protected] ]]; then
    TAB_NAMES=$(echo "$TABS_JSON" | jq -r 'map(.title) | .[]')

    echo "$TAB_NAMES"
else
    TAB=$*

    TAB_ID=$(echo "$TABS_JSON" | jq -r "map(select(.title | match("${TAB}";"i")) | .id) | .[]")

        chrome-remote-interface activate "$TAB_ID" >/dev/null

    #you might need wmctrl if window does not activate. 
    #wmctrl -a chromium
fi

vai a cnn.com e un paio di altre schede e mantieni cnn.com in background, passa al terminale e prova il comando in questo modo:

act cnn

Dovrebbe attivare la finestra chromium e passare alla scheda cnn. Sei libero di integrarlo ulteriormente con il tuo menu rofi o la variante fzf nel tuo flusso di lavoro e persino inserire l'elenco delle schede aperte nel pool globale di finestre attive.


Linux
  1. Come eseguire uno script bash tramite percorso assoluto?

  2. Xubuntu Chromium NET::ERR_CERTIFICATE_TRANSPARENCY_REQUIRED

  3. Il modo più semplice per inviare un file tramite posta elettronica tramite la riga di comando in *nix?

  4. completamento del file bash senza specificare ./

  5. Qual è il modo migliore per verificare se un volume è montato in uno script Bash?

La pagina "nuova scheda" di Chromium non si carica?

Come aggiornare l'IP e il nome host di Ubuntu tramite Bash

chromium-browser:comando non trovato

Bash che ignora l'errore per un particolare comando

Esegui il comando bash sulla pipeline jenkins

C'è un modo per mostrare la notifica dallo script bash in Ubuntu?