[Risolto] Script bash con comando tar e variabili

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Scrivi risposta
Avatar utente
marchesim
Prode Principiante
Messaggi: 130
Iscrizione: domenica 18 novembre 2007, 8:52
Desktop: Gnome
Distribuzione: Ubuntu 18.04LTS
Sesso: Maschile
Località: Ferrara

[Risolto] Script bash con comando tar e variabili

Messaggio da marchesim »

Ciao a tutti.
Sto cercando di far funzionare uno script in bash che esegue una compressione tramite tar.
Non trovo indicazioni su come si utilizzano le variabiali nel comando tar, se potete indicarmi qualche link o darmi qualche indicazione vi sarei grato.

In particolare dovrei far funzionare un semplice comando del genere

Codice: Seleziona tutto

tar -zcvf ${desttar}/${timestamp}_${ftp}.tar.gz ${dest}
dove ad esempio ho inserito le variabili:
desttar = indirizzo cartella di destinazione del file tar
timestamp = inserisce la data nel nome del file tar ( timestamp=$( date +%d-%m-%Y_%H-%M ))
dest = indirizzo della cartella da comprimere

Provando lo script mi genera un file tar nel posto giusto ma vuoto, mentre se inserisco i corrispondenti indirizzi al posto delle variabili funziona tutto per cui credo che sia un problema delle variabili e del loro utilizzo nel comando tar.

L'errore che mi risulta quando faccio partire lo script è questo:

Codice: Seleziona tutto

tar: Rimozione di "/" iniziale dai nomi dei membri
tar: /home/xxxx/xxxxxx/xxxxxxx/xxxxxxxxxxxxxxx.xxx: funzione "stat" non riuscita: File o directory non esistente
tar: Uscita con stato di fallimento in base agli errori precedenti
L'indirizzo ovviamente è però giusto.
Ultima modifica di marchesim il lunedì 25 maggio 2015, 11:22, modificato 1 volta in totale.
Avatar utente
Zoff
Moderatore Globale
Moderatore Globale
Messaggi: 33338
Iscrizione: mercoledì 10 ottobre 2007, 22:36

Re: Script bash con comando tar e variabili

Messaggio da Zoff »

Magari mancano le virgolette:

Codice: Seleziona tutto

tar -zcvf "${desttar}/${timestamp}_${ftp}.tar.gz" "${dest}"
Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Avatar utente
marchesim
Prode Principiante
Messaggi: 130
Iscrizione: domenica 18 novembre 2007, 8:52
Desktop: Gnome
Distribuzione: Ubuntu 18.04LTS
Sesso: Maschile
Località: Ferrara

Re: Script bash con comando tar e variabili

Messaggio da marchesim »

provato ma mi restituisce lo stesso errore
Avatar utente
Zoff
Moderatore Globale
Moderatore Globale
Messaggi: 33338
Iscrizione: mercoledì 10 ottobre 2007, 22:36

Re: Script bash con comando tar e variabili

Messaggio da Zoff »

desttar esiste?
Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Avatar utente
marchesim
Prode Principiante
Messaggi: 130
Iscrizione: domenica 18 novembre 2007, 8:52
Desktop: Gnome
Distribuzione: Ubuntu 18.04LTS
Sesso: Maschile
Località: Ferrara

Re: Script bash con comando tar e variabili

Messaggio da marchesim »

si, infatti in quella posizione mi ritrovo il file tar.gz ma se lo decomprimo è vuoto (45byte, dovrebbero essere circa 6Mb)
Avatar utente
Zoff
Moderatore Globale
Moderatore Globale
Messaggi: 33338
Iscrizione: mercoledì 10 ottobre 2007, 22:36

Re: Script bash con comando tar e variabili

Messaggio da Zoff »

Rimuovi il - dalle opzioni

Codice: Seleziona tutto

tar zcvf "${desttar}/${timestamp}_${ftp}.tar.gz" "${dest}"
Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Avatar utente
marchesim
Prode Principiante
Messaggi: 130
Iscrizione: domenica 18 novembre 2007, 8:52
Desktop: Gnome
Distribuzione: Ubuntu 18.04LTS
Sesso: Maschile
Località: Ferrara

Re: Script bash con comando tar e variabili

Messaggio da marchesim »

rimosso il - dalle opzioni del comando tar ma stesso errore :cry:
Avatar utente
Zoff
Moderatore Globale
Moderatore Globale
Messaggi: 33338
Iscrizione: mercoledì 10 ottobre 2007, 22:36

Re: Script bash con comando tar e variabili

Messaggio da Zoff »

L'unica cosa rimasta è che tu riesca a replicare l'errore con file che non devi censurare.
Così si possono fare piu' analisi.
Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Avatar utente
marchesim
Prode Principiante
Messaggi: 130
Iscrizione: domenica 18 novembre 2007, 8:52
Desktop: Gnome
Distribuzione: Ubuntu 18.04LTS
Sesso: Maschile
Località: Ferrara

Re: Script bash con comando tar e variabili

Messaggio da marchesim »

Codice: Seleziona tutto

#!/bin/sh"
dest=/home/simome/Scaricati/download_siti_web/archivio"	#---CARTELLA DI DESTINAZIONE
desttar="/home/simone/MEGA/sitiweb"	#---CARTELLA DOVE SALVARE IL FILE COMPRESSO DEL SITO
timestamp=$( date +%d-%m-%Y_%H-%M )	#---DATA E ORA
tar zcvf "${desttar}/${timestamp}_archivio.tar.gz" "${dest}"	#---COMPRESSIONE
questo è semplificato ma da lo stesso errore, ho tolto solo la variabile ftp praticamente per motivi di privacy, il resto sono cartelle del mio notebook.
Ultima modifica di marchesim il lunedì 25 maggio 2015, 10:55, modificato 1 volta in totale.
Avatar utente
Zoff
Moderatore Globale
Moderatore Globale
Messaggi: 33338
Iscrizione: mercoledì 10 ottobre 2007, 22:36

Re: Script bash con comando tar e variabili

Messaggio da Zoff »

Quali sono i permessi di /home/simome/Scaricati/download_siti_web/ftp.simonemarchetti.altervista.org e dei file contenuti?
Su quale file viene generatore l'errore?
Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Avatar utente
marchesim
Prode Principiante
Messaggi: 130
Iscrizione: domenica 18 novembre 2007, 8:52
Desktop: Gnome
Distribuzione: Ubuntu 18.04LTS
Sesso: Maschile
Località: Ferrara

Re: Script bash con comando tar e variabili

Messaggio da marchesim »

i permessi di quella cartella sono lettura e scrittura (777), gli ho appena dato un sudo chmod -R 777 per sicurezza ma sempre stesso errore
come lo vedo su quale file viene generato l'errore?
Avatar utente
Zoff
Moderatore Globale
Moderatore Globale
Messaggi: 33338
Iscrizione: mercoledì 10 ottobre 2007, 22:36

Re: Script bash con comando tar e variabili

Messaggio da Zoff »

è quello a fianco all'errore.

Non è che la cartella ftp è un mount fatto con curlftpfs o simili?
Se è un problema di permessi prova a dare il comando con sudo, se funziona vediamo di sistemarlo.
Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Avatar utente
marchesim
Prode Principiante
Messaggi: 130
Iscrizione: domenica 18 novembre 2007, 8:52
Desktop: Gnome
Distribuzione: Ubuntu 18.04LTS
Sesso: Maschile
Località: Ferrara

Re: Script bash con comando tar e variabili

Messaggio da marchesim »

Ti spiego. io scarico tramite wget un mio sito ftp e lo memorizzo nella cartella indicata in "dest". Non monto la cartella ftp.
Dovrei comprimere quella cartella con tar o qualcos'altro ma non ci riesco in nessun modo con lo script. In manuale tramite terminale invece me lo comprime perfettamente. Ho messo le variabili perchè ho altri 15 siti che volevo salvare in questo modo e soprattutto per automatizzare il tutto tramite cron senza creare decine di voci. Se poi mi cambia qualche dato mi basterebbe modificare la variabile....
Avatar utente
Zoff
Moderatore Globale
Moderatore Globale
Messaggi: 33338
Iscrizione: mercoledì 10 ottobre 2007, 22:36

Re: Script bash con comando tar e variabili

Messaggio da Zoff »

Prova a mettere questo comando nello script, immediatamente prima del comando tar:

Codice: Seleziona tutto

[ -d "$dest" ] && echo "esiste" || echo "NON esiste"
Cosa ti stampa?
Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Avatar utente
marchesim
Prode Principiante
Messaggi: 130
Iscrizione: domenica 18 novembre 2007, 8:52
Desktop: Gnome
Distribuzione: Ubuntu 18.04LTS
Sesso: Maschile
Località: Ferrara

Re: Script bash con comando tar e variabili

Messaggio da marchesim »

ho trovato l'errore.... c'era una m al posto di una n....
ora funziona
Infinitamente grazie !
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 6 ospiti