Tu compte le nombre de fichier dans le répertoire destination avant et après copie, s’il y a un delta alors il y a eu copie …
Sinon que te donne un $? si aucune copie a été effectué ?
Justement j’aurais voulu éviter de passer par ça. Mais je crois que je vais pas avoir le choix.
[quote=« Mimoza »]Sinon que te donne un
$?si aucune copie a été effectué ?[/quote]
J’avais essayé ça déjà (c’est vrai que j’aurais pu le dire). Enfait [mono]$?[/mono] me retourne 0 quoi qu’il arrive.
Justement j’aimerais utiliser le [mono]-v[/mono] dans ma commande et écrire quelque chose ensuite à l’aide de printf. Mais écrire quelque chose seulement si il y’a eu au moins un déplacement.
Je laisse encore le sujet ouvert quelques jours au cas ou quelqu’un passe avec une idée Sinon j’utiliserais la comparaison du nombre de fichiers avant et après…
dOssier="/media/Test/"
dOssierTxt="/media/Test/Txt/"
find $dOssier -type f -name "*.txt" ! -path $dOssierTxt"*" -print0 | xargs -0r sh -c '
dest=$1
shift
for i in "$@"; do
mv "$i" "$dest"
done
printf "blablabla\n"
' sh $dOssierTxt
La solution de Iroy n’est pas si sale que ça, finalement au lieu de le faire en 1 ligne on la décompose pour pour tracer ce qui est fait et en plus tu pourra avoir le retour de la commande [mono]mv[/mono]
J’ai finalement opté pour une autre solution a laquelle j’ai pensé. Je rends la commande [mono]mv[/mono] bavarde avec [mono]-v[/mono]. Et j’enregistre ce retour dans une variable que je peux tester ensuite.
J’aime quand c’est simple
Si vous avez des remarques n’hésitez pas. En attendant je passe déjà le sujet en résolu.