venerdì 27 settembre 2013

Le foto di Squittymouse.

Salve!

Non ci crederete, ma le cose belle accadono. Sì, in questi giorni il caro Squittymouse è ospite a casa mia. Non vi dico quanto ci stiamo divertendo...Vi svelo solo un particolare, il caro topo immortala con la sua macchina fotografica di tutto...Solo che, calato il vespro, quando dovevamo rivedere le foto della giornata, ci siamo ritrovati di fronte a un problema... Ora vi racconto.

Una volta collegata la macchina fotografica al pc, thunar l'ha rilevata subito, solo che non caricava le foto. O meglio, cercava di caricarle, ma poi, ad un certo punto, il procedimento si bloccava.

Per cercare di capire cosa stesse succedendo, abbiamo provato a lanciare thunar dal terminale...ed è venuto fuori una cosa del genere:

thunar-volman: protocollo usb non supportato.

La macchina in questione è la seguente.

$ lsusb

Bus 001 Device 005: ID 04cb:0263 Fuji Photo Film Co., Ltd

Da una breve ricerca fatta su internet, abbiamo scoperto che il plugin di thunar non supporta tutti i protocolli, compreso quello della macchina di Squit.

Abbiamo ovviato installando un programmino alquanto potente: gphoto2

$ sudo apt-get install gphoto2

Una volta installato, gli abbiamo fatto eseguire una scansione delle periferiche collegate

$ gphoto2 --auto-detect

Il cui risultato è stato:

A questo punto, per trasferire le immagini dalla macchina all'hd del pc, anzitutto ci siamo spostati nella cartella Immagini, poi abbiamo creato una sottodirectory e, spostatici dentro, abbiamo scaricato le foto.

$ cd Immagini && mkdir Squit && cd Squit

$ gphoto2 --get-all-files

Da notare che, con il secondo comando, abbiamo chiesto a gphoto2 di copiare nella cartella di cui sopra tutto il contenuto presente nella SD card della macchina fotografica.

Per approfondire le mille funzioni di gphoto2, consultare la pagina man del programma

$ man gphoto2

Ora, però, vi dobbiamo lasciare, il pranzo è servito!



Ah, dimenticavo....


A presto!

venerdì 20 settembre 2013

Brevi Esercizi: Backup dei file di testo presenti in una directory

Pomeriggio, Sandro, un signore che si sta avvicinando all'ottantina, doveva modificare alcuni file di testo presenti nella sua directory Documenti. Lui è un tipo molto premuroso e, ovviamente, mi ha chiamato tutto allarmato: Senti, Luigi, il tuo macinino (così chiama Lubit) funziona in modo discreto, ma ora vorrei fare il backup di alcuni file di testo che sto per modificare...prima che faccio casini come l'altra volta, chiedo il tuo aiuto...

Non avevo molto tempo, gli ho creato un piccolo script semplice semplice, che ho messo nella nostra cartella condivisa, su dropbox. Il fatto che non abbia ancora richiamato, è buon segno.

#!/bin/bash

a=backup

test -d $a || mkdir -p $a

for i in *.txt; do cp "$i"{,.bak} && mv "$i.bak" $a; done;

exit 0

Cosa fa lo script. Anzitutto controlla se esiste la cartella backup. Se non esiste la crea. Poi duplica tutti i file di testo presenti nella directory aggiungendo l'estensione .bak. Infine, tutti i nuovi file.bak vengono spostati nella cartella backup, precedentemente creata. Tutto qui.

Posto che i file di cui fare il backup siano nella cartella documenti, anzitutto metto lo script in codesta directory e poi

mi sposto dal terminale nella cartella documenti

$ cd  Documenti

rendo eseguibile lo script

$ chmod +x backup.sh

e lo eseguo. 

$ ./backup.sh

Indice brevi esercizi


Ok, alla prossima!

lunedì 16 settembre 2013

Brevi Esercizi. Locate e il suo database da aggiornare.

Che programma usi per cercare file in Linux?

Penso che il più veloce sia Locate.

$ locate FileDaCercare


Ah, il più veloce...sì, ma mi dà risultati fuorvianti. Ad esempio, se creo un file oppure ne cancello uno, locate mi dà un falso positivo.

Vero. La velocità di ricerca si paga. Cerco di spiegarti il perchè. Locate non cerca il file direttamente nel sistema, ecco perchè è veloce, lo cerca invece in un database. Questo database però non si aggiorna immediatamente. Ovviamente c'è un modo per farlo, basta lanciare il seguente comando:

$ sudo updatedb

Updatedb esegue una scansione dell'intero sistema e aggiorna il database (mlocate.db), che ha il seguente percorso:

/var/lib/mlocate/mlocate.db


Il database, ovviamente, contiene semplicemente il percorso del file cercato.

Per maggiori informazioni su locate:

$ man locate

Alla prossima!

Ah, vi ricordo ancora due cose.

L'indice della rubrica "Brevi Esercizi" lo trovate qui

Il corso di Python continua, sebbene sul blog del caro Juhan. L'indice lo trovate qui.

Creare archivi compressi protetti da password

Vi siete mai trovati nella necessità di creare un archivio compresso e di avere necessità di proteggerlo da sguardi indiscreti?
Io si, spesso, ed ho sempre risolto utilizzando programmi specifici, ad iniziare da winzip. Ma ora, aspirante pinguino, un tarlo mi rodeva: la riga di comando.
Questa sera avevo bisogno di creare il mio archivio zippato contenente l'elenco delle mie password. Arricciate il naso? Poco ortodosso?
Sempre meglio che tenerle scritte in un foglietto nascosto sotto il tappetino del mouse....
Così mi sono detto "caro Squit, sei o non sei un pinguino? E allora comportati da tale!"
Mi sono messo a frugare tra i fogli sparsi, gli appunti e i manuali che costituiscono il mio tesoro, e dopo qualche ricerca ecco la mia soluzione:
ho aperto una sessione di terminale e con il comando

$ cd Scrivania/password


mi sono spostato nella cartella contenente i singoli files che volevo comprendere nell'archivio compresso

poi con il comando

$ zip -e password.zip *.*


ho creato il file password.zip, archivio compresso, protetto da password, contenente tutti i miei dati



Alla prossima da Topo Squit

domenica 15 settembre 2013

Brevi Esercizi: AWK, Sort e un elenco di date da sistemare.

Stamattina potevano essere le quattro, quando mi arriva una telefonata di Ciro, il pastore. Per farla breve, doveva sistemare un elenco di date. Sì, Ciro ha la licenza di chiamare a casa mia a qualsiasi ora.

Qual era il suo problema?

cat date.txt
12-4-1973
5-9-2010
9-1-1950
11-10-1980
23-5-1999
6-2-1926
27-8-2015
23-02-1903

Ciro, in pratica, voleva aggiungere uno zero davanti a giorni e mesi con un solo numero e poi ordinare l'elenco in ordine crescente in base all'anno...più o meno così:

23-02-1903
06-02-1926
09-01-1950
12-04-1973
11-10-1980
23-05-1999
05-09-2010
27-08-2015

In realtà la soluzione non è molto difficile, a patto che si conoscano alcuni comandi.


 awk -F- '{ printf "%02d-%02d-%d\n", $1, $2, $3 }' date.txt |  sort -nk3 -t -


Coloro che hanno seguito il corso di awk non dovrebbero avere problemi a capire la riga di comando. Infatti su awk non dirò nulla, eccetto una cosa su printf.

 Il flag "0" fa usare a printf dei caratteri '0' (anziché spazi) a sinistra dei numeri di ogni colonna, fino al raggiungimento di una certa lunghezza. Vabbè, su printf ci ritornerò prossimamente con un post molto serio.

Ritornerò anche sul comando sort. Ora non ho molto tempo per spiegare le cose, si sono svegliati gli ospiti prussiani e devo ancora preparare la colazione. 

A presto!


giovedì 5 settembre 2013

Python - risorse free


Python è un linguaggio di successo. E ha un'infinità di gente che lo usa, ci lavora. lo migliora, ne parla, condivide cose e idee.
Per esempio Kiran, un programmatore indiano, un nerd tosto, ha un blog, scrive su StakOverflow, Twitter e mille altri post. E GitHub.

Ecco, questo volevo segnalarvi: PyCrumbs, che starebbe (se l'inglese non mi tradisce) per briciole di Python. Bella come idea, presa direttamente da Pollicino, Tommy Thumb.

OK, qui:  kirang89/pycrumbs trovate tantissimissime di risorse, per principianti e per quelli che sanno già parecchio. Quasi tutto free, tranne pochi casi, segnalati.
Ah, sì, tutto in inglese, ovviamente.

Buona navigazione!