.: HosiriS :.

Informatica e non solo

Archive for giugno 2010

Ricercare in file PDF

Posted by hosiris su giugno 30, 2010

Almeno una volta nella vita ci è capitato di dover fare delle ricerche all’interno di testi e, se come me utilizzate prevalentemente la CLI, di sicuro avete usato almeno una volta il comando grep.
Ma se volessimo fare delle ricerche all’interno di file PDF? Dobbiamo necessariamente aprire il file?
Anche qui grep ci può essere d’aiuto, infatti possiamo usare il seguente comando:

$ pdftotext input.pdf -| grep "chiave"

in questo modo visualizzerete i risultati direttamente sul terminale (naturalmente potete redirigere l’output dove vi pare).
Ma il vero problema che mi si è presentato è quello di fare ricerche su un numero indefinito di file PDF… ricercando un po’ e rispolverando vecchi comandi, ho trovato questa soluzione che per quello che serve a me è decisamente onesta:

$ ls *.pdf | xargs -I{} pdftotext {} -| grep "chiave"

Naturalmente se qualcuno conoscesse una soluzione migliore può solo fare un piacere alla comunità postando il suo metodo.

Buon divertimento

Annunci

Posted in Linux, Ubuntu | Leave a Comment »

Valutazione di protesi valvolare mitralica tramite risonanza magnetica

Posted by hosiris su giugno 29, 2010

Lo studio seguente mostra come è possibile utilizzare la risonanza magnetica per valutare i parametri necessari a comprendere l’andamento emodinamico della valvola, al fine di ottenere una progettazione ottimale della bioprotesi.

FONTE: jcmr-online.com
DOWNLOAD FILE: PDF

Posted in Ingegneria Biomedica, NewsOfTheDay | Leave a Comment »

Puntualizzazioni sull’aggiornamento del server

Posted by hosiris su giugno 28, 2010

Scrivo questo piccolo tips di corsa prima di andare a lavoro.
Magari a qualcuno è capitato di avere un server a cui non riesce ad applicare alcuni aggiornamenti trovando un messaggio simile a: “I seguenti pacchetti sono stati mantenuti alla versione attuale”.
Non disperate, ma una lettura approfondita del man può aiutarci.
In molti eseguono una specifica sequenza per aggiornare il sistema:

$ sudo apt-get update
$ sudo apt-get upgrade

ecco, in questo modo non state dicendo al sistema di portare ogni pacchetti all’ultima versione presente nei repo. E’ bene aggiungere anche il seguente comando:

$ sudo apt-get dist-upgrade

Questo comando, come il 90% di voi sta pensando, non serve ad aggiornare l’intero sistema alla versione attuale del rilascio. Per fare questo servono delle operazioni aggiuntive descritte in manuali specifici.
Alla prossima

Posted in Sistemi, Ubuntu | Leave a Comment »

Costruire un laboratorio virtuale per CCNA

Posted by hosiris su giugno 27, 2010

Da poco avvicinatomi al mondo Cisco (e al mondo CCNA) mi sono ritrovato subito a dover fare pratica per assimilare i concetti presentati nel corso.
La possibilità lampante è quella di comprare router e switch Cisco :O… beh magari è una soluzione troppo dispendiosa. Allora possiamo pensare di usare sistemi di virtualizzazione come, ad esempio, GNS3.
Installarlo è facile come scrivere:

$ sudo apt-get install gns3

Al termine vi consiglio di modificare il menù facendo in modo che il programma parta con permessi di amministratore.

Terminata la configurazione, vi viene richiesto di caricare le immagini IOS. Il come trovarle non è cosa facile, personalmente ho chiesto ad un conoscente.
Una volta finite tutte le oprazioni potete facilmente costruire delle possibili situazioni di network:

Questo strumento ci permetterà di applicare i concetti appresi nella prima parte del corso (Routing).
Vedremo come estendere le funzionalità utilizzando delle macchine virtuali.

Buon divertimento

Posted in Sistemi | Leave a Comment »

Controllare PC da remoto: soluzioni testuali e visuali

Posted by hosiris su giugno 26, 2010

Tempo fa ho parlato di come usare SSH per montare partizioni remote. Ma questo uso “improprio” non esprime appieno le potenzialità del protocollo.
SSH sta per Secure SHell ed è il sostituto sicuro di Telnet. Chi ha avuto modo di lavorare con quest’ultimo sa che a livello di sicurezza non era il massimo in quanto le comunicazioni avvenivano in chiaro. L’introduzione di SSH ci permette di introdurre la crittografia e di migliorare la sicurezza.
Come il nome suggerisce, questo protocollo ci permette di aprire una shell su macchina remota e di poterla gestire: pensate a come risulta facile amministrare un server in questo modo… il mio server si trova a circa 1000Km da me!
Certo questo impone che sappiate per lo meno come ci si muove in una shell… ma esistono anche delle soluzioni visuali. Su sistemi Windows ho sempre usato Logmein che unisce ad un ottima connettività, un livello di sicurezza non indifferente. Ma questo sistema non funziona su sistemi *nix, e come si fa? Basta riesumare il buono e caro VNC (che gira anche su Windows). L’installazione è molto semplice, cominciamo con:

$ sudo apt-get install gnome-core
$ sudo apt-get install vnc4server

in questo modo il server è installato. Per avviare la sessione date:

$ vncserver -geometry 1024x768 -depth 24

vi chiederà la password che sarà usata per abilitare la connessione ed infine vi sarà data conferma della creazione della sessione. Dobbiamo adesso ottimizzare il servizio. Intanto chiudiamo la sessione:

$ vcnserver -kill :1

e modifichiamo il file “.vnc/xstartup” in maniera che sia uguale al seguente:

#!/bin/sh
unset SESSION_MANAGER
exec sh /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 1024x768+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &

salvate ed avviate nuovamente la sessione. Da questo momento da un PC client potete accedere al vostro server. Se siete al di fuori della LAN dovete ricordare di aprire le porte verso il vostro server (porte 5901 e 6001 su entrambi i protocolli TCP e UDP).
Per terminare vi consiglio di aggiungere una riga, che ci permette di riavviare automaticamente il servizio, al file /etc/rc.local:

/usr/bin/vncserver -geometry 1024x768 -depth 24

Salvate e… Buon divertimento

Posted in Linux, Sistemi, Ubuntu | Leave a Comment »

Aggiorniamo OpenOffice

Posted by hosiris su giugno 25, 2010

E’ arrivato il momento di togliere la 3.1 dal mio Karmic e passare alla rinnovata OpenOffice 3.2 (anche essa con logo Oracle :o). Scaricato il pacchetto dal sito: OpenOffice, dobbiamo prima disinstallare la vecchia versione:

$ sudo apt-get remove --purge openoffice.org-*

rimuovete tutto, ben pulito e poi installare la java runtime machine se non l’avete già:

$ sudo apt-get install sun-java6-jre

Estraete l’archivio, e procediamo con l’installazione:

$ tar xvzf OOo_3.2.1_Linux_x86_install-deb_it.tar.gz
$ cd DEBS
$ sudo dpkg -i *.deb
$ cd desktop-integration
$ sudo dpkg -i *.deb

E adesso godetevi la bella nuova versione.

Posted in Ubuntu | Leave a Comment »

Guida definitiva a Magento

Posted by hosiris su giugno 24, 2010

Entrato da poco nel mondo dell’eCommerce ho dovuto subito imparare la basi per creare una prima applicazione. Avendo scelto di utilizzare Magento, ho anche pensato di prendere un libro.
Questo che vi presento da un’ottima carrellata di informazioni per chi, come me alle prime armi, vuole creare una applicazione senza troppe pretese: The definitive guide to Magento.

Acquistato su Amazon.com, questo libro mi ha dato un’ottima mano per comprendere i fondamenti del CMS.
E’ inutile dire che solo la lettura del libro non porta a nessun risultato, quindi scaricate il pacchetto e ad ogni capitolo perdete un po’ di tempo per provare le nozioni apprese.

Buon divertimento.

Posted in Libri, Magento, Programmazione | Leave a Comment »

L’importanza della documentazione

Posted by hosiris su giugno 23, 2010

I “programmatori” autodidatti (come me) hanno sempre avuto un difetto: basano i loro studi sulla sintassi del linguaggio, ma non tengono mai in considerazione l’importanza di dover documentare il codice che viene scritto. Si da per scontato che un altro programmatore sia in grado di leggere e comprendere il sorgente che gli viene messo davanti. Certo se parliamo di progetti basilari, in cui non vengono usate librerie strane e in cui il codice non super le 50 righe questo è vero, ma pensiamo a progetti che comprendono più di uno sviluppatore, che prevedo sorgenti complessi con richiami continui a librerie… diventa impossibile capire cosa si ha davanti.
Ecco che diventa di importanza vitale il saper commentare il codice. Direi che è importante quanto scrivere del buon codice.
Credo sia nelle conoscenze di ogni “programmatore” la metodologia con cui un linguaggio accetta dei commenti, quindi una documentazione di base rientra nelle capacità di tutti, basta essere sufficientemente completi, tanto i commenti non vengono compilati, possiamo scrivere 1000 righe di commento per una funzione senza avere dei risultati negativi sull’esecuzione del programma.
Oggi a queste conoscenze di base, voglio aggiungere l’uso di uno strumento che ci permette di creare della documentazione più facilmente leggibile: Doxygen.
Il programma può essere installato facilmente da repository:

$ sudo apt-get install doxygen

mentre l’interfaccia grafica va scaricata, anche se esiste un deb.
Seguendo il manuale è facile capire come sia possibile personalizzare i commenti. Ad esempio consideriamo il seguente codice:

#include <iostream>

/** @brief Funzione di visualizzazzione
  * Tramite questa funzione viene stampato a video un messaggio di saluto
  * @author io
  * @date oggi
  */
void echo(){
  cout << "CIAO" << endl;
}

/** @brief Corpo principale
  */
int main(){
  echo();
  return 0;
}

Salviamo il codice e apriamo la gui di doxygen tramite il comandi doxywizard:

Inseriamo i dati necessari, poi scegliamo il tab RUN e poi Run doxygen. Aspettiamo che vengano terminate le operazioni e poi possiamo visualizzare il risultato.
Personalmente preferisco il formato tex in quanto una volta compilato ci permette di avere un manuale, ma il formato html ci permette una navigazione più semplice.

Buon divertimento

Posted in Programmazione | Leave a Comment »

Sviluppo e valutazione di un software open source per la quantificazione morfometrica delle fibrosi al fegato

Posted by hosiris su giugno 22, 2010

L’uso della morfometria basata sull’uso del computer potrebbe diminuire la soggettività nelle valutazioni. Un programma di elaborazione dell’immagine è stato sviluppato con Delphi per la quantificazione della fibrosi al fegato.
Lo studio presenta i risultati delle analisi eseguite tramite questo software.

FONTE: www.fibrogenesis.com
DOWNLOAD FILE: PDF

Posted in Ingegneria Biomedica, NewsOfTheDay | Leave a Comment »

Modificare immagini facilmente e senza programmi complessi

Posted by hosiris su giugno 21, 2010

Nel post in cui parlo dell’OCR ho solo accennato al nome di un software che può tornarci vermante utile: Imagemagik.
Questo programma ci da la possibilità di effettuare operazioni sulle immagini anche da terminale… so che sembra impossibile, ma non lo è… vediamo cosa può fare:

  • convertire il formato delle immagini
  • trasformare le immagini (ridimensionamento, rotazione, ribaltamento, selezione di una porzione e ritaglio di una immagine)
  • applicare della trasparenza a porzioni di immagini
  • disegnare, aggiungendo linee e testi
  • decorare utilizzando bordi e frame
  • applicare effetti speciali di colore o di luce
  • creare animazioni gif da un gruppo di immagini
  • inserire descrizioni all’interno delle immagini
  • inserire informazioni a riguardo dell’immagine (come il formato e le proprietà)
  • sovrapporre un’immagine ad un’altra
  • creare montaggi di immagini
  • applicare espressioni matematiche alle immagini
  • cifrare e decifrare immagini

Vista l’enorme potenza, proverei a fare qualche test:

  • Ridimensionare Immagine:

    $ convert image.ext -resize 20% output.ext
  • Ridimensionare più Immagini:

    $ convert 'image*.ext' -resize 20% output.ext
  • Convertire formato Immagine:

    $ convert image.ext image.ext2
  • Concatenare Immagini:

    $ convert image-0.ext image-1.ext image-2.ext -channel RGB -combine imagecopy.ext

Questi sono i principali che uso io… ma le potenzialità sono infinite e la documentazione molto ben fatta, quindi solo la vostra fantasia potrà frenarvi…

Posted in Ubuntu | Leave a Comment »