Pagina 1 di 1
Differenza tra cp e mv su directory gia esistente
Inviato: mer 3 nov 2010, 1:04
da relay
Ciao a tutti, stavo sperimentanto l'aggiornamento del mio sito via ssh è volevo chiedervi una delucidazione.Se provo ad aggiornare una directory con una nuova versione:
mv imageapi sites/all/modules ->dove in modules esiste la dir imageapi da aggiornare
ottengo
mv: cannot overwrite directory `sites/all/modules/imageapi'
Se invece provo con cp:
cp -R imageapi sites/all/modules/imageapi ->tutto va bene.
Dato che il risultato è lo stesso.Chi sa dirmi perchè con mv non mi permette di effettuare l'azione?
Grazie!
Re: Differenza tra cp e mv su directory gia esistente
Inviato: mer 3 nov 2010, 1:32
da albatros
Non è la stessa cosa: con il primo comando (mv) sostituiresti in toto la directory esistente con la nuova (cosa che non ti viene concesso di fare), che verrebbe poi rimossa dalla directory padre originaria, con il secondo (cp) scritto in questo modo copieresti imageapi sotto sites/all/modules/imageapi ottenendo sites/all/modules/imageapi/imageapi (conservando la directory di origine), ma probabilmente intendevi
che ha l'effetto di aggiungere i file nuovi (e le directory nuove) contenuti in imageapi in sites/all/modules/imageapi (in maniera ricorsiva) e di sovrascrivere i files già esistenti.
(P.S. Inizio ad aver sonno, spero di aver scritto giusto...)
Re: Differenza tra cp e mv su directory gia esistente
Inviato: sab 6 nov 2010, 17:17
da relay
Si, ma in pratica quello che ottengo in tutti e due i casi è un aggiornamento di imageapi alla nuova versione.Perchè secondo te con mv mi viene negato l'accesso?
Grazie
Re: Differenza tra cp e mv su directory gia esistente
Inviato: lun 8 nov 2010, 1:17
da albatros
Probabilmente perché chi ha scritto mv ha ritenuto che questo fosse il miglior modo di comportarsi del programma in questa situazione: l'imageapi dentro la directory sites/all/modules che tu andresti a sovrascrivere potrebbe contenere dei dati importanti che tu non vorresti perdere e tu potresti dimenticarti che sotto sites/all/modules c'è questa directory chiamata per l'appunto come quella che vai a spostare.