Ricerca Google da terminale: differenze tra le versioni

m
ripristino compatibilità
Nessun oggetto della modifica
m (ripristino compatibilità)
 
(18 versioni intermedie di 6 utenti non mostrate)
Riga 1: Riga 1:
{{Versioni compatibili|Tutte le versioni di Debian|}}
{{Versioni compatibili|Stretch|Buster}}
==Ricerca Google da terminale==
__TOC__
 
==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.
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:
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:


<pre>
<pre>
$ google stringa da ricercare
$ google "stringa da ricercare"
</pre>
</pre>


Una volta digitato il comando di sopra si dovrebbe aprire la finestra del browser con i risultati della ricerca già belli e pronti.
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:
Per fare quanto abbiamo detto basta creare uno script simile al seguente:


<pre>
<pre>
#script per la ricerca in google da linea di comando
#! /bin/sh
#by np - 11marzo2010


#!/bin/bash
# script per la ricerca in google da linea di comando
# by np - 11 marzo 2010


#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=$(echo $@|sed 's/ /+/g')
str_search=$(printf %s\\n "$*" | sed 's/[[:space:]]/+/g')


#a causa del fatto che le " 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 il simbolo __ verra' convertito nelle " di google
# allora due underscore __ verranno convertiti nelle virgolette di google
str_search=$(echo $str_search|sed 's/__/"/g')
str_search=$(printf %s\\n "$str_search" | sed 's/__/"/g')


#debug, stampa la stringa modificata
# debug, stampa la stringa modificata, se la variabile d'ambiente DEBUG è 1
#echo $str_search
if [ "${DEBUG:-0}" = 1 ]; then
  printf %s\\n "DEBUG: $str_search" >&2
fi


google-chrome "http://www.google.it/search?hl=it&source=hp&q="$str_search 2> /dev/null > /dev/null &
exec www-browser "https://www.google.it/search?hl=it&source=hp&q=${str_search}"
exit 0
</pre>
</pre>


Poi basta salvare questo script (io gli ho dato il nome google) in /usr/local/bin per poterlo utilizzare in qualunque directory vi troviate. Ovviamente se non utilizzate chrome, basta cambiare il "google-chrome" con l'eseguibile del vostro browser predefinito.
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 amministrazione]], per poterlo utilizzare in qualunque directory vi troviate.<br>
Ricordatevi di cambiare i permessi sul file, per aggiungere il bit di esecuzione:
<pre>
# chmod 755 /usr/local/bin/google
</pre>
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:
<pre>
# chown root:root /usr/local/bin/google
</pre>


==Esempi d'uso==
==Esempi d'uso==
Riga 40: Riga 48:
* ricerca semplice
* ricerca semplice
<pre>
<pre>
$ google stringa da cercare
$ google "stringa da cercare"
$ google "stringa da cercare"
</pre>
<pre>
$ google "l'amore"
</pre>
</pre>


* ricerca di una sequenza esatta di stringhe ("debian lenny")
* ricerca di una sequenza esatta di stringhe ("debian lenny")
<pre>
<pre>
$ google __debian lenny__
$ google __debian+lenny__
$ google "__debian lenny__"
</pre>
</pre>
* ricerca di stringhe con apostrofo
<pre>
<pre>
$ google "__l'albero a cui tendevi__"
$ google "__l'albero a cui tendevi__"
</pre>
</pre>


<pre>
$ google "l'amore"
</pre>
NOTA: le " servono soprattutto quando vengono utilizzati gli apostrofi (o comunque sia altri caratteri che possono "disturbare" il recupero dei parametri da parte dello script)


Autore: [[Utente:Np2k|np2k]]
{{Autori
|Autore = [[Utente:Np2k|np2k]] 19:20, 30 mar 2010 (CEST)
|Verificata_da =
:[[Utente:HAL 9000|HAL 9000]] 21:23, 18 ago 2019 (CEST)
|Estesa_da =
|Numero_revisori = 1
}}


[[Category: Tips&Tricks]]
[[Category: Browser]][[Category: Bash Scripting]]
3 581

contributi