chalda.it

Appunti di viaggio di Chalda Pnuzig

Follow me on TwitterFeed RSS

  • Home
  • Contatti

Comprimere in linux con tar… in modo furbo :-)

30 ott

Pubblicato da chalda in Manuali ed istruzioni

Nessun commento

Penso che tutti sappiano ormai come comprimere e decomprimere i file tgz, tar.gz, z, etc, in linux…
Ma per chi non lo sapesse esiste un metodo più furbo per creare semplici backup incrementali utilizzando le date, in modo da avere già nel nome del file la data di creazione.

Il comando per visualizzare una data è ovviamente date. Consiglio di utilizzare le date in formato YYYYMMDD così se i file vengono ordinati in modo alfabetico vengono ordinati dal più vecchio al recente :)

Ma passiamo ai comandi! Per comprimere:

tar -czvf nome_tarball.`date +%Y%m%d`.tgz file_o_cartella_da_archiviare1 file_o_cartella_da_archiviare2 ...

In questo modo verrà creato un file nome_tarball.20091030.tgz contenenti i file o le cartelle specificati

Per decomprimere:

tar -xzf nome_tarball.20091009.tgz
linux, tar

Convertire tutti i file ISO-8859-1 in utf-8

30 ott

Pubblicato da chalda in Manuali ed istruzioni

Nessun commento

Certe volte, soprattutto in ambito web, i caratteri speciali (come le lettere accentate) appaiono in modo strano e incomprensibile anche se abbiamo impostato il nostro web server ad utilizzare utf-8.

Questo nella maggior parte dei casi è dovuto ad una errata codifica dei file, spesso in ISO-8859-1.

Per convertirli tutti in un colpo solo è sufficiente dare un solo comando:


find /directory/da/modificare -type f -exec sh -c "( iconv --from-code ISO-8859-1 --to-code UTF-8 {} -o {}.iconv ; mv {}.iconv {} ; )";

E voilà! Tutti i file ora sono in utf8!

Se non dovesse funzionare ed utilizzate htmlentities, ricordate di specificare il charset (terzo parametro)!

htmlentities($testo,ENT_COMPAT,'UTF-8'); 
ISO-8859-1, linux, utf-8

Come cercare e rimuovere file in linux

26 ott

Pubblicato da chalda in Manuali ed istruzioni

Nessun commento

Per ricercare un file si utilizza il comando find con le opzioni -type f (di tipo file) e -name nomefile (di nome nomefile).
Utilizzando i risultati del comando è possibile rimuovere i file:

find ./directory -type f -name 'Thumbs.db' -exec rm {} \;

Un esempio pratico ed utile è quello di rimuovere i file Thumbs.db sulle cartelle condivise da utenti windows:

find /share -type f -name 'Thumbs.db' -exec rm {} \;
linux

Settare i permessi a file/directory per apache

21 ott

Pubblicato da chalda in Manuali ed istruzioni

Nessun commento

I permessi su linux sono essenziali :)
Una buona configurazione dei permessi per apache è settare il proprietario a root e solo i file/directory necessari a www-data.
Inoltre i permessi per i file devono essere a 644 (permessi di scrittura solo al proprietario e
lettura a tutti), mentre le directory a 755.

Per farlo in modo automatico è sufficiente dare i seguenti comandi:

find /directory/da/modificare -type f -exec chmod 644 {} \;

In questo modo si ricerca ogni file e si setta a 644

find /directory/da/modificare -type d -exec chmod 755 {} \;

Qui invece si ricercano le directory e si settano a 755

Ovviamente per cambiare l’utente/gruppo si da il comando

chown -R www-data:www-data /directory

Dove con -R si intende in modo recursivo.

apache, files, linux, permessi

Come evitare che firefox tronchi le pagine nell’anteprima di stampa

19 ott

Pubblicato da chalda in Manuali ed istruzioni

Nessun commento

Firefox è un ottimo browser, ma per quanto riguarda la stampa lascia un po’ a desiderare.
Non è difficile imbattersi in anteprime di stampa abnormi, in cui viene visualizzata solo una pagina di contenuto e il resto scompare misteriosamente…

Per ovviare a questo problema creiamo una pagina di stile alternativo per la stampa, che chiameremo print.css, ed inseriamo le seguenti righe:

#idcontenitore {
   display: inline;
   overflow:visible;
}

Poi linkeremo lo style nel nostro template con la seguente riga:

 <link rel="stylesheet" type="text/css" href="print.css" media="print" />

Ora l’anteprima di stampa di firefox dovrebbe tagliare le pagine in modo corretto!

css, firefox, html, workaround

Aggiungere una localizzazione in Linux

19 ott

Pubblicato da chalda in Manuali ed istruzioni

Nessun commento

Le localizzazioni sono molto utili quando per esempio abbiamo bisogno che certe funzioni ritornino la data o la valuta formattata secondo standard locali.
Questo è un caso classico della funzione strtotime di php.

Per aggiungere una lingua basta modificare il file /etc/locale.gen ed inserire il codice della localizzazione. Per l’italiano:

it_IT.UTF-8@euro UTF-8

Poi rigeneriamo le localizzazioni con il comando

locale-gen

linux, localizzazione

Search & Replace tra i file in linux

19 ott

Pubblicato da chalda in Manuali ed istruzioni

Nessun commento

Capita molto spesso di dover fare una classica ricerca e sostituzione all’interno dei file.
Ok, ma come farlo in modo semplice ed automatico in linux?
Utilizzando il seguente comando:

grep -rl 'OLDSTRING' . | xargs perl -pi~ -e 's/OLDSTRING/NEWSTRING/'

Ovviamente al posto di OLDSTRING metteremo la stringa di ricerca e in NEWSTRING la stringa con cui la rimpiazzeremo.

In tali stringhe di ricerca potete utilizzare le espressioni regolari, ovviamente con sintassi perl :)

linux, search/replace

Settare l’altezza di un div a 10px o meno in ie6

19 ott

Pubblicato da chalda in Manuali ed istruzioni

Nessun commento

Certe volte si ha necessità di settare un’altezza minima a un div, ma ie6 non ne vuole sapere e setta una sua “Altezza minima”.

Questo perché ie6 HA un’altezza minima per gli elementi: l’altezza del carattere.

Per ovviare al problema inserire nel CSS:

#div{
   height:5px;
   line-height:0;  /* Altezza riga a 0 */
   font-size:0  /* Dimensione Carattere a 0*/
}
css, html, ie6, workaround

Come accedere ad elementi in un iframe con jQuery

7 ott

Pubblicato da chalda in Manuali ed istruzioni

Nessun commento

Per accedere ad elementi interni di un iframecon jquery è semplicissimo.
Supponiamo di avere un iframe di id=”iframe”

<iframe id="iframe" ...></iframe>

E che l’iframe contenga un div di id=”div”

<div id="div">Prova</div>

Per accedere all’elemento basta selezionare l’iframe, prenderne il contenuto e cercare l’elemento voluto:

var $div = $('#iframe').contents().find('#div'));

Con questo esempio potete accedere a qualsiasi elemento dell’iframe semplicemente sostituendo #div con i selettori che vorrete :)

iframe, javascript, jQuery

Commenti javascript per la validazione xhtml

30 set

Pubblicato da chalda in Manuali ed istruzioni

Nessun commento

Quante volte vi è capitato di dover inserire codice javascript direttamente sulla pagina ma questo ha portato alla non validazione della stessa?

Bene, questo succede perché il validatore w3c non riesce a gestire il codice html presente all’interno del javascript e lo interpreta come codice html normale.

Per ovviare a questo problema è sufficiente aggiungere dei commenti prima e dopo lo script:

<script type="text/javascript">
/* <![CDATA[ */
// Il contenuto javascript va qui
/* ]]> */
</script>

E il gioco è fatto!
Ora tutto il validatore considera tutto il javascript come commento.

javascript, validazione, xhtml
«123»
  • Tag

    apache backup batch beep conversioni css data directory espressioni regolari files firefox firewall html ie6 iframe ISO-8859-1 javascript jQuery linux localizzazione mysql permessi php rtf search/replace shorewall tar ttf utf-8 validazione validazione email workaround xhtml
  • Pagine

    • Contatti
  • Commenti Recenti

    • silvio su Guida alla sintassi delle espressioni regolari
    • chalda su Guida alla sintassi delle espressioni regolari
    • silvio su Guida alla sintassi delle espressioni regolari
  • Articoli recenti

    • Guida alla sintassi delle espressioni regolari
    • Controllo validazione email con php seguendo le specifiche RFC
    • Controllo validazione email con javascript anche con i nuovi domini accentati
    • Come eseguire uno script all’uscita della pagina
    • Come effettuare backup di database mysql (Importazione ed Esportazione)
  • Flickr

  • wakoopa

    My top 10 software
Feed RSS XHTML 1.1 Top