Per archiviare file, ad esempio file di log, si può usare il comando find; ad esempio per storicizzare tutti i file più vecchi di n giorni si può usare la seguente sintassi: find . -type f -ctime +<n> -exec tar –remove-files -rf <nome_archivio>.tar {} \; && zip <nome_archivio>.tar.zip <nome_archivio>.tar && rm -f <nome_archivio>.tar Nota dalla …
Continue reading Archiviare file con find
Tag:find
Trovare file creati prima di n giorni
Per trovare tutti i file creati prima di un certo numero di giorni usare il comando: find . -type f -ctime <n giorni> -ls More than 30 days ago: -ctime +30 Less than 30 days ago: -ctime -30 Exactly 30 days ago: -ctime 30 Nota dalla pagina man di find: “n*24 hours ago. When find figures out how …
Continue reading Trovare file creati prima di n giorni
Cancellare file o directory vuoti
Per cancellare directory vuote usare il comando: find /path/to/dir -empty -type d -delete Per cancellare file vuoti usare il comando: find /path/to/dir -empty -type f -delete
Trovare file non di proprietà di un utente
Se si ha la necessità di trovare files o directory non di proprietà di un utente o di un gruppo usare i seguenti comandi: find <path> ! -user <username> find <path> ! -user <username> -type d find <path> ! -group <groupname> find <path> ! -group < groupname > -type d
Pulire nomi file
Per eliminare i caratteri speciali dai nomi dei file usare l’espressione regolare: s/[^A-Za-z0-9._-]/_/g Può essere usata con VI oppure con sed: sed -e ‘s/[^A-Za-z0-9._-]/_/g’ oppure direttamente con find: find . -exec rename ‘s/[^A-Za-z0-9._-]/_/g’ “{}” \;
Calcolare dimensione file in un path
La dimensione effettiva dei file è differente dallo spazio che occupano su disco per via della “block size”, di conseguenza l’uso del comando “du” non permette di conoscere l’effettiva dimensione dei file ma solo lo spazio che occupano su disco. Per avere un’idea precisa della dimensione dei file in una cartella usare il comando: find …
Continue reading Calcolare dimensione file in un path