[risolto] bash: upload ftp solo se la directory non esiste
Inviato: mercoledì 7 maggio 2014, 19:57
A fine di uno script bash devo fare l'upload su un server ftp (nella directory "/../2014") di: un file index.html, di una directory contente immagini "gallery_xxx" e (solo se non esiste già) della directory "comune" contenente file css, javascript e file comuni.
Per fare l'upload non ci sono problemi, solo vorrei evitare di fare l'upload della directory "comune" se esiste già.
Non ho accesso ssh al server quindi passo i vari comandi mediante here-doc al programma "ftp".
per intendersi:
Il problema è che in "ftp" non ho trovato opzioni del tipo "Esegui mkdir (o mput) solo se la directory non esiste".
Per mkdir non ci sono problemi ma vorrei evitare l'upload della directory "comune" se esiste già.
Ho letto anche il man di "ncftp", ho scoperto che è molto più potente di "ftp" ma non ha comunque l'opzione che vorrei.
L'unica cosa che mi è venuta in mente è di verificare, prima, l'esistenza della directory (o di un file interno) con "wget -spider ..." e di creare poi la stringa con i comandi da passare a ftp in base al risultato della verifica.
Sapete indicarmi qualche altra idea o qualche programma ftp che abbia l'opzione da me desiderata?
Grazie a chiunque voglia intervenire.
Per fare l'upload non ci sono problemi, solo vorrei evitare di fare l'upload della directory "comune" se esiste già.
Non ho accesso ssh al server quindi passo i vari comandi mediante here-doc al programma "ftp".
per intendersi:
Codice: Seleziona tutto
ftp -n -i $host <<comandi_ftp
user $user $pass
binary
bell
cd $path_remoto
put "$trasf_file"
mkdir "$trasf_dir"
lcd "$trasf_dir"
cd "$trasf_dir"
mput "*.*"
...
comandi_ftp
Per mkdir non ci sono problemi ma vorrei evitare l'upload della directory "comune" se esiste già.
Ho letto anche il man di "ncftp", ho scoperto che è molto più potente di "ftp" ma non ha comunque l'opzione che vorrei.
L'unica cosa che mi è venuta in mente è di verificare, prima, l'esistenza della directory (o di un file interno) con "wget -spider ..." e di creare poi la stringa con i comandi da passare a ftp in base al risultato della verifica.
Sapete indicarmi qualche altra idea o qualche programma ftp che abbia l'opzione da me desiderata?
Grazie a chiunque voglia intervenire.