jump to navigation

Decompressore Archivi Maggio 17, 2007

Posted by linuxiano in Linux, terminale, Uncategorized, Utility.
1 comment so far

In questo breve tutorial vedremo un semplice script shell il cui scopo non è altro che decomprimere archivi .tar , .tar.gz , .tar.bz2 ……
usando la shell…..

Eccovi il codice:

#! /bin/bash
NOME="decompressore"
FUNZIONE="Decomprime zip, tar, tgz, tar.gz, tar.bz2, tar.z e li inserisce in una directory con lo stesso prefisso dell'archivio"
USO="$NOME [-vhlr] <file> [file...]"
VERSIONE="1.2"
utilizzo () {
echo >&2 "$NOME $VERSIONE - $FUNZIONE
Utilizzo: $USO
Opzioni:
-r, rimuove il file compresso dopo l'estrazione
-v, dettagliato
-h, utilizzo e opzioni (help)
-l, vedi lo script"
exit 1
}
[ $# -eq 0 ] && { echo >&2 argomento mancante digitare $NOME -h per le opzioni; exit 1; }
rmf=
dettagliato=
while getopts vhlr Opzioni; do
case $Opzioni in
r) rmf=on ;;
v) dettagliato=on ;;
h) utilizzo ;;
l) more $0; exit 1 ;;
\?) echo argomento non valido, type $NOME -h per le opzioni; exit 1 ;;
esac
done
shift $(( $OPTIND - 1 ))
mkdirf() {
[ -d $1 ] && { echo "${NOME}: saltato ${2} - dir ${1} esiste" ; continue; }
mkdir $1
}
Trova_dir_file() {
local _dir="${1%${1##*/}}"
[ "${_dir:=./}" != "/" ] && _dir="${_dir%?}"
echo "$_dir"
}
Trova_nome_file() {
local _name="${1##*/}"
echo "${_name%$2}"
}
clean() {
[[ $1 != 0 ]] && rmdir $2
[[ $1 == 0 && $dettagliato ]] && echo "${NOME}: decompressione " ${dir}/${a}
[[ $rmf ]] && rm -f -- $a
}
start_dir=$(pwd)
for a in "$@"; do
cd $start_dir
fname=$(Trova_nome_file $a)
dir=$(Trova_dir_file $a)
cd $dir
a=$fname
case $a in
*.[zZ][iI][pP])
mkdirf ${a/.[zZ][iI][pP]/} $a
unzip -qq $a -d ${a/.[zZ][iI][pP]/}
clean $? ${a/.[zZ][iI][pP]/}
;;
*.[tT][aA][rR])
mkdirf ${a/.[tT][aA][rR]/} $a
tar -xf $a -C ${a/.[tT][aA][rR]/}/
clean $? ${a/.[tT][aA][rR]/}
;;
*.[tT][gG][zZ])
mkdirf ${a/.[tT][gG][zZ]/} $a
tar -xzf $a -C ${a/.[tT][gG][zZ]/}
clean $? ${a/.[tT][gG][zZ]/}
;;
*.[tT][aA][rR].[gG][zZ])
mkdirf ${a/.[tT][aA][rR].[gG][zZ]/} $a
tar -xzf $a -C ${a/.[tT][aA][rR].[gG][zZ]/}/
clean $? ${a/.[tT][aA][rR].[gG][zZ]/}
;;
*.[tT][aA][rR].[bB][zZ]2)
mkdirf ${a/.[tT][aA][rR].[bB][zZ]2/} $a
tar -xjf $a -C ${a/.[tT][aA][rR].[bB][zZ]2/}/
clean $? ${a/.[tT][aA][rR].[bB][zZ]2/}
;;
*.[tT][aA][rR].[zZ])
mkdirf ${a/.[tT][aA][rR].[zZ]/} $a
tar -xZf $a -C ${a/.[tT][aA][rR].[zZ]/}/
clean $? ${a/.[tT][aA][rR].[zZ]/}
;;
*) echo "${NOME}: $a non si tratta di un file compresso oppure il suffisso non viene riconosciuto" ;;
esac
done

A questo punto salvate il seguente file con il nome:
decompressore.sh

poi cambiamo le proprietà di esecuzione del file così:
click con tasto desto->proprietà->(spuntiamo)esegui lo script come programma

Adesso lo script è funzionanate….

Per vedere le funzioni di questo programma, digitate da shell:
./decompressore -h

Comunque le funzioni ve le riporto qui, e sono:
Opzioni:
-r, rimuove il file compresso dopo l’estrazione
-v, dettagliato
-h, utilizzo e opzioni (help)
-l, vedi lo script

La risposta di Torvalds alle accuse di Microsoft Maggio 17, 2007

Posted by linuxiano in Linux, Note su Linux, Uncategorized.
add a comment

Linus Torvalds ha risposto alle accuse di Microsoft tramite un’intervista fatta con informationweek.

Alle domande riguardanti le possibili violazioni di copyright da parte del software libero Linus ha affermato che è molto più plausibile che sia Windows ad infrangere un notevole numero di brevetti relativi a sistemi operativi antecendenti ad esso e sviluppati in seno ad IBM.

Torvalds inoltre chiude l’intervista con una sua classica frecciatina, ricordando che la tattica dell’ abbiamo la lista ma non ve la diamo non è stata molto fortunata per SCO e che molto probabilmente l’azienda di Redmond stia solo giocando la classica carta del FUD.

fonte:ossblog