Problème avec find dans un script de migration owncloud
Bonjour,
Voici le contexte :
j'ai un abonnement chez un hébergeur sur lequel j'ai installé le logiciel libre owncloud pour stocker mes fichiers à l'image de dropbox.
Problème : L'erreur suivante se produit quand je tente de mettre à jour owncloud 8 serveur en allant sous admin puis en cliquant sur update
M'aider à migrer mes fichiers de owcloud 8 vers owncloud 9. En effet, quand je tente de mettre à jour owncloud 8, l'erreur suivante se produit systématiquement.
Code:
1 2 3
|
Update failed.Unable to move /home/httpd/vhosts/domainname/httpdocs/owncloud/_oc-upgrade/8.2.9/core/core to /home/httpd/vhosts/domainename/httpdocs/owncloud/core |
Pour tenter de résoudre ce problème, 'ai donc décidé de migrer vers ownclous 9 à moins que vous n'ayez d'autre proposition
J'ai donc écrit un petit script de migration dont le but et d'extraite les fichiers indispensable à owncloud puis de copier les fichiers restants
Voici le code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
# ce script est une aide à la migration owncloud 8 vers owncloud 9
# auteur Batant
# créer le : 28.01.2017
# créer un dossier de sauvegarde
mkdir ~/backup_owncloud
# scanner le dossier owcloud 9
for i in ls -la ~/Téléchargements/owncloud_9 ; do
# rechercher le fichier dans l'ancien dossier et le déplacer dans backup
find ~/ownCloud -name $i -exec mv -R -v {} backup_owncloud {} \;
done
# copier owcloud 9 dans le dossier utilisateur
cp -R -v ~/Téléchargements/owncloud_9 ~/owncloud_9
# copier les fichier owcloud sauvegardé dans owcloud
cp -R -v ~/backup_owncloud/ ~/Téléchargements/owncloud_9 |
J'ai le problème suivant avec la commande find qui ne s'éxécute pas
Code:
1 2 3 4
|
find ~/ownCloud -name $i -exec mv -R -v {} backup_owncloud {} \;
find: attention*: les noms de fichiers Unix usuels ne contiennent pas de barre obliques (sauf pour les chemins). Cela signifie que «*-name «/home/mparchet/Téléchargements/owncloud_9»*» sera toujours évalué comme étant faux sur ce système. Vous pouvez trouver que le test «*-wholename*» est plus utile, ou encore celui-ci*: «*-samefile*». Alternativement, si vous utilisez GNU grep, vous pourriez utiliser «*find ... -print0 | grep -FzZ «/home/mparchet/Téléchargements/owncloud_9»*». |
je remarque par ailleurs que les script shell continue de s'exécuter même si une commande renvoie une erreur pourquoi ?
pourriez-vous m'aider à résoudre ce problème surtout au niveau de find ?
Meilleures salutations et encore bonne année