[RISOLTO] Errore durante lo scompattamento

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
cyberninja
Linux 2.0
Linux 2.0
Messaggi: 128
Iscritto il: gio mar 08, 2007 11:22

[RISOLTO] Errore durante lo scompattamento

Messaggioda cyberninja » mer feb 19, 2014 18:05

Salve a tutti!
Finalmente sono riuscito a completare il mio primo script veramente "utile". :lol:
Siccome mi capita spesso di dover decomprimere diversi archivi compressi in sequenza, ho scritto una roba del genere:

Codice: Seleziona tutto

#!/bin/bash

# Scompattamento multiplo di archivi compressi

# La variabile [dir] puo' essere il primo parametro posizionale
# o una directory specifica.
dir="$1"

# Se non viene immessa una directory di destinazione
# viene emesso un messaggio di errore.
if [ ! -d "$dir" ]
then
        echo
        echo "Immetti per prima una directory di destinazione!"
        echo

# Altrimenti viene eseguita la decompressione
else
        for file in "$@"
                do 7z e "$file" "-o$dir"
done
fi


Funziona alla grande, ma sul primo parametro posizionale, che corrisponde alla directory di destinazione, mi ritorna questo errore:

Codice: Seleziona tutto

Error:
can't decompress folder


Il perchè è ovvio.
Come faccio a far capire allo script che $1 non è un archivio oppure a fare in modo che analizzi i parametri posizionali solo da $2? :-k

Grazie!

Luca
Ultima modifica di cyberninja il mer feb 19, 2014 19:33, modificato 1 volta in totale.

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 4850
Iscritto il: ven giu 02, 2006 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: Errore durante lo scompattamento

Messaggioda ZeroUno » mer feb 19, 2014 19:28

Codice: Seleziona tutto

dir="$1"
shift
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

cyberninja
Linux 2.0
Linux 2.0
Messaggi: 128
Iscritto il: gio mar 08, 2007 11:22

Re: Errore durante lo scompattamento

Messaggioda cyberninja » mer feb 19, 2014 19:32

Funziona! \:D/

Grazie mille, ho imparato una cosa nuova. :thumbright:

Luca


Torna a “Programmazione”

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite