Pagina 1 di 1

[RISOLTO] tar, exclude e variabili

Inviato: dom 3 nov 2013, 19:48
da cyberninja
Salve a tutti!
Mi sto cimentando nel bash scripting (sono molto novizio :D ) e fatto uno script per backuppare i documenti del pc della mia compagna.
Lo script funziona, ma sto tentando di "rifinirlo" e mi sono scontrato con un piccolo problema.

Volendo escludere il contenuto di alcune directory, all'inizio avevo fatto così:

Codice: Seleziona tutto

 --exclude /home/carla/dir_da_escludere/*
e funzionava.
Ho provato, per ottimizzare il codice, a fare così:
Ho assegnato una variabile alla directory da backuppare

Codice: Seleziona tutto

SOURCE1="/home/carla/"
poi questo

Codice: Seleziona tutto

 --exclude $SOURCE1/dir_da_escludere/*
e non mi funziona più. :(
Ho anche provato diversi tipi di quoting, ma stesso risultato.
Mi sfugge qualcosa o proprio non si può? :-k

Grazie per le eventuali risposte!

Luca

Re: tar, exclude e variabili

Inviato: dom 3 nov 2013, 22:49
da hashbang
Metti all'inizio dello script (dopo l'hashbang, ovviamente)

Codice: Seleziona tutto

set -x
È un ottimo modo per debuggare e capire cosa c'è che non va.

Comunque sia, quando dici che lo script non va, che intendi?
tar esce in errore? Se sì, quale?

Re: tar, exclude e variabili

Inviato: lun 4 nov 2013, 8:21
da cyberninja
Scusa, hai ragione, non mi sono spiegato bene.
Lo script funziona, ma mettendo $SOURCE1 invece del path completo la directory non viene esclusa. :-(
Per ora ho risolto con

Codice: Seleziona tutto

-X exclude.txt
ma proverò a debuggare come mi hai suggerito tu.

Grazie!

Re: tar, exclude e variabili

Inviato: lun 4 nov 2013, 10:13
da cyberninja
Ok, grazie al suggerimento di hashbang ho risolto in 30 secondi. :P
Quando definisco la variabile

Codice: Seleziona tutto

SOURCE1="/home/carla/"
non devo mettere la slash alla fine, altrimenti il lo script interpreta cosìù

Codice: Seleziona tutto

/home/carla//dir_da_escludere/
Ho imparato qualcosa di nuovo. :D

Luca