Ricerca Google da terminale: differenze tra le versioni
mNessun oggetto della modifica |
m (correzioni varie) |
||
Riga 19: | Riga 19: | ||
# rimpiazza gli spazi con + (equivalentemente con %20) | # rimpiazza gli spazi con + (equivalentemente con %20) | ||
# $* prende tutti i parametri dello script in un'unica variabile | # $* prende tutti i parametri dello script in un'unica variabile | ||
str_search=$( | str_search=$(printf %s\\n "$*" | sed 's/[[:space:]]/+/g') | ||
# a causa del fatto che le virgolette vengono utilizzate per gli argomenti dello script contenenti spazi | # a causa del fatto che le virgolette vengono utilizzate per gli argomenti dello script contenenti spazi | ||
# allora due underscore __ verranno convertiti nelle virgolette di google | # allora due underscore __ verranno convertiti nelle virgolette di google | ||
str_search=$( | str_search=$(printf %s\\n "$str_search" | sed 's/__/"/g') | ||
# debug, stampa la stringa modificata, se la variabile DEBUG è | # debug, stampa la stringa modificata, se la variabile d'ambiente DEBUG è 1 | ||
if [ "${DEBUG:-0}" = 1 ]; then | |||
printf %s\\n "DEBUG: $str_search" >&2 | |||
fi | |||
exec www-browser "http://www.google.it/search?hl=it&source=hp&q=${str_search}" | exec www-browser "http://www.google.it/search?hl=it&source=hp&q=${str_search}" | ||
</pre> | </pre> | ||
Poi basta salvare questo script ( | Poi basta salvare questo script (in questa guida gli si è dato il nome <code>google</code>) in <code>/usr/local/bin</code> con [[privilegi di amministratore]], per poterlo utilizzare in qualunque directory vi troviate.<br> | ||
Ricordatevi di cambiare i permessi sul file, per aggiungere il bit di esecuzione: | Ricordatevi di cambiare i permessi sul file, per aggiungere il bit di esecuzione: | ||
<pre> | <pre> | ||
Riga 67: | Riga 66: | ||
|Autore = [[Utente:Np2k|np2k]] 19:20, 30 mar 2010 (CEST) | |Autore = [[Utente:Np2k|np2k]] 19:20, 30 mar 2010 (CEST) | ||
|Verificata_da = | |Verificata_da = | ||
: [[Utente:HAL 9000|HAL 9000]] | : [[Utente:HAL 9000|HAL 9000]] 12:26, 21 apr 2015 (CEST) | ||
|Estesa_da = | |||
|Numero_revisori = 1 | |Numero_revisori = 1 | ||
}} | }} | ||
[[Category: Browser]][[Category: Bash Scripting]] | [[Category: Browser]][[Category: Bash Scripting]] |
Versione delle 10:26, 21 apr 2015
Versioni Compatibili Tutte le versioni supportate di Debian |
Creazione dello script
Molto spesso ci ritroviamo ad utilizzare il terminale e, completamente immersi nell'uso della tastiera, può essere una scomodità lasciarla per passare al mouse, aprire il nostro browser e digitare la chiave da ricercare e infine vedere i risultati. Sarebbe molto comodo avere a disposizione uno script che permettesse di eseguire gran parte dei passi precedenti direttamente da terminale. Ovvero sarebbe comodo poter scrivere una cosa del genere:
$ google "stringa da ricercare"
Una volta digitato il comando di sopra si dovrebbe avviare il browser predefinito (senza richiedere un server grafico attivo), con i risultati della ricerca già belli e pronti. Per fare quanto abbiamo detto basta creare uno script simile al seguente:
#! /bin/sh # script per la ricerca in google da linea di comando # by np - 11 marzo 2010 # rimpiazza gli spazi con + (equivalentemente con %20) # $* prende tutti i parametri dello script in un'unica variabile str_search=$(printf %s\\n "$*" | sed 's/[[:space:]]/+/g') # a causa del fatto che le virgolette vengono utilizzate per gli argomenti dello script contenenti spazi # allora due underscore __ verranno convertiti nelle virgolette di google str_search=$(printf %s\\n "$str_search" | sed 's/__/"/g') # debug, stampa la stringa modificata, se la variabile d'ambiente DEBUG è 1 if [ "${DEBUG:-0}" = 1 ]; then printf %s\\n "DEBUG: $str_search" >&2 fi exec www-browser "http://www.google.it/search?hl=it&source=hp&q=${str_search}"
Poi basta salvare questo script (in questa guida gli si è dato il nome google
) in /usr/local/bin
con privilegi di amministratore, per poterlo utilizzare in qualunque directory vi troviate.
Ricordatevi di cambiare i permessi sul file, per aggiungere il bit di esecuzione:
# chmod 755 /usr/local/bin/google
E di cambiare utente e gruppo in root, per impedire che l'utente possa cambiargli i permessi e in seguito modificarlo, introducendo potenzialmente una vulnerabilità nel sistema:
# chown root:root /usr/local/bin/google
Esempi d'uso
Vediamo alcuni esempi:
- ricerca semplice
$ google "stringa da cercare"
$ google "l'amore"
- ricerca di una sequenza esatta di stringhe ("debian lenny")
$ google "__debian lenny__"
$ google "__l'albero a cui tendevi__"
Guida scritta da: np2k 19:20, 30 mar 2010 (CEST) | Debianized 40% |
Estesa da: | |
Verificata da:
| |
Verificare ed estendere la guida | Cos'è una guida Debianized |