# Améliorer la présentation de la sortie de "find"

**URL:** <https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404>\
**Category:** Support Debian\
**Created:** [Novembre 13, 2022, 7:23 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404 "2022-11-13T07:23:00Z")\
**Posts on this page:** 20\
**Page:** 2

<div class="post-metadata">

**Author:** ![zao](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/z/ce7236/32.png) [@zao](https://www.debian-fr.org/u/zao)\
**Post date:** [Novembre 15, 2022, 11:01 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/21 "2022-11-15T11:01:29Z")

</div>

> [@anon29980398](#):
>
> Voir mon [message #11](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/11)

Au temps pour moi : j’avais bien lu ce message et je n’ai pas pris la peine d’essayer de trouver où était l’erreur . Aucune excuse .

Une fois corrigée les espaces vides et la présence de ( de ) ne provoquent plus de dysfonctionnement.

Qunat à la différence de comportement avec \< ou \< \< je n’en vois aucune si ce n’est que lors de l’enreistrement **source .bashrc** bash me signale :

> **erreur de syntaxe près du symbole inattendu « \<(find -maxdepth 1 -type f |sort) »**.

Je reprendrai ça plus tard car je dois répéter la même erreur sans m’en rendre compte : laissons décanter .

---

<div class="post-metadata">

**Author:** ![Verner](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/v/34f0e0/32.png) [@Verner](https://www.debian-fr.org/u/Verner)\
**Post date:** [Novembre 15, 2022, 7:01 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/22 "2022-11-15T19:01:26Z")

</div>

Je pense qu’effectivement tu as besoin de plus de temps pour mieux cerner ton besoin.  
Quelques points à toutes fins utiles:

▪ Ouvrir un sujet pour améliorer la sortie d’un ‹&nbsp;find -maxdepth 1&nbsp;›, c’est-à-dire le répertoire courant, et trouver qu’un ‹&nbsp;diff -r&nbsp;›, c’est-à-dire récursif, n’est pas mal non plus, c’est pas facile à suivre pour ne pas dire contradictoire.

▪ Que signifie pour toi comparer deux répertoires ? est-ce juste comparer la liste de fichiers ? ou aussi te soucier de la date et du contenu des fichiers ?  
Deux fichiers de même nom avec la même arborescence sur deux supports peuvent avoir des dates et un contenu totalement différents.  
Juste lister et comparer ne te donne qu’un vague aperçu de l’éventuelle synchronicité de deux disques, puisque c’est finalement ce que tu veux faire, si je comprends bien, donc rien à voir avec un ‹&nbsp;find -maxdepth 1&nbsp;›.

▪ Aussi pas compris les histoires de ‹&nbsp;guillemets manquants&nbsp;›.  
Si je les vois, c’est qu’ils sont bien là, ils n’ont pas bougé depuis le début.  
Si personne n’a rien tripoté par derrière sans mon accord, aucune raison de disparaître.  
En faisant un copier/coller d’une fonction, aucune raison que des guillemets disparaissent non plus.  
Il y a 3 types de guillements en bash qui ont une fonction précise et pas juste à fin décorative.

```
echo 'SHELL' -> SHELL
echo "SHELL" -> SHELL (aucune différence entre " et ' dans ce cas)
echo `SHELL`	-> bash: SHELL : commande introuvable
echo "$SHELL"	-> /bin/bash
echo '$SHELL' -> $SHELL

```

▪ Les redirections en bash5: certes pas évident et pas trivial, je te l’accorde, mais je ne suis pas l’auteur de bash, et ne fais que suivre la documentation sur les redirections de fonctions ! Tu ne peux pas changer une syntaxe bash pour la mettre à ton goût, et t’étonner que le résultat change.

> Quant à la **différence** de comportement avec \< ou \< \< , **je n’en vois aucune** si ce n’est que lors de l’enregistrement source .bashrc bash me signale : **erreur de syntaxe**

Voir **et** ne pas voir, c’est tout l’art du «&nbsp;_En même temps_&nbsp;», savoir caser dans la même phrase tout et son contraire, en espérant que personne ne s’en rendre compte. C’est même un métier, tout un apprentissage.  
Bonne réflexion.

---

<div class="post-metadata">

**Author:** ![zao](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/z/ce7236/32.png) [@zao](https://www.debian-fr.org/u/zao)\
**Post date:** [Novembre 15, 2022, 8:09 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/23 "2022-11-15T20:09:25Z")

</div>

> [@Verner](#):
>
> Quant à la **différence** de comportement avec \< ou \< \< , **je n’en vois aucune** si ce n’est que lors de l’enregistrement source .bashrc bash me signale : **erreur de syntaxe**

j’ai écrit une ânerie car , comme je le soupçonnais , ja faisais une erreur systématique dans mes comparaisons . En fait sans la 1ère redirection ça ne fonctionne pas . Mais j’aimerais bien savoir pourquoi elle est indispensable ~~car la sortie de la substitution de processus pointe , me semble-t-il, vers stdin de la 1ère commande **basename**~~ , si j’ai bien compris la fonction . Mais comme elle passe d’abord par un fichier temporaire à ce que j’ai pu lire … C’est loin d’être clair pour moi .

- finalement le cours de l’IUT-Rodez que j’ai repris , justement à la fonction **while** , m’a fourni la réponse p 78 .

- pour un éventuel lecteur aussi peu avancé que moi je rajoute ceci que je trouve assez clair :

> `<(...)` alone is not a redirection; it’s a process substitution, that exposes the output of a command as if it were a file. **the `<` between `done` and the process substitution is the redirection operator: it causes the `while` loop to use the process substitution as its standard input.**  
> **Everything _inside_ the `while` loop inherits the loop’s standard input as its own** , which is why each `read` command reads from the process substitution as well.

autrement dit : c’est comme ça que fonctionne une boucle **while** = c’est prévu pour .

Quant à la comparaison de répertoires c’est pour vérifier que lorsque je réalise des tranferts entre mon portable (la référence ) et mon ssd nomade et de sauvegarde je n’ai rien oublié en route . Tout sur l’informatique c’est pratique mais mieux vaut s’assurer qu’en cas de pépin on a bien tout sauvegardé correctement . C’est ce que j’essaie de faire à ma façon , artisanale certes , mais rien n’est immuable . Et lorsque je maîtriserai un peu mieux **ssh** j’essaierai de rendre ces contrôles automatiques avec l’aide de **diff** qui , si je lui donne les bonnes infos , n’oubliera rien lui . Pour ça **diff -r** , que je ne connaissais pas , m’a l’air au top . Chaque chose en son temps .

---

<div class="post-metadata">

**Author:** ![Verner](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/v/34f0e0/32.png) [@Verner](https://www.debian-fr.org/u/Verner)\
**Post date:** [Novembre 15, 2022, 8:22 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/24 "2022-11-15T20:22:35Z")

</div>

Donc, si finalement, ton besoin est de synchroniser des disques, rsync le fait parfaitement, mais les réglages sont chatouilleux, très chatouilleux, tu es prévénu, la commande est complexe avec une très longue liste d’options.  
A connaître, l’option `--dry-run`, pour tester sans effectuer aucun transfert.  
Utiliser un interface graphique sur rsync serait sûrement plus simple pour toi que de tripatouiller du bash, au moins pour démarrer et apprivoiser la bête.  
Un outil super léger sur rsync: **grsync**.  
A toi de voir.

---

<div class="post-metadata">

**Author:** ![zao](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/z/ce7236/32.png) [@zao](https://www.debian-fr.org/u/zao)\
**Post date:** [Novembre 15, 2022, 8:26 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/25 "2022-11-15T20:26:04Z")

</div>

> [@Verner](#):
>
> Donc, si finalement, ton besoin est de synchroniser des disques, rsync le fait parfaitement, mais les réglages sont chatouilleux, très chatouilleux, tu es prévénu, la commande est complexe avec une très longue liste d’options.

inutile d’aller plus loin ; au moins pour le moment . Je vais encore rester dans l’artisanat . C’est peut-être archaïque mais au moins je sais ce que je fais .

mais merci pour l’info , peut-être que dans une autre vie …

---

<div class="post-metadata">

**Author:** ![anon29980398](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/f4b2a3/32.png) [@anon29980398](https://www.debian-fr.org/u/anon29980398)\
**Post date:** [Novembre 15, 2022, 10:24 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/26 "2022-11-15T22:24:35Z")

</div>

Je comprends très bien le plaisir de faire soi-même ce genre de script,  
mais si le but est de comparer des répertoires, fichiers, etc,  
**midnight commander** ([**`mc`**](https://packages.debian.org/stable/mc)) a déjà tout ce qu’il faut pour ça et même bien plus :  
tu pourras très simplement comparer tes répertoires (et autres) entre un répertoire local et un distant et même avec le contenu d’un fichier archive de type zip, gzip, bzip, ISO, sans même avoir besoin de les décompresser.

---

<div class="post-metadata">

**Author:** ![zao](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/z/ce7236/32.png) [@zao](https://www.debian-fr.org/u/zao)\
**Post date:** [Novembre 16, 2022, 5:41 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/27 "2022-11-16T05:41:55Z")

</div>

> [@anon29980398](#):
>
> **midnight commander**

Ma première pensée en voyant ce nom = Lord Commander of the Night’s Watch . Comme quoi GOT m’a marqué .

Ceci dit je viens de survoler ce **mc** et ça m’a l’air intéressant . Reste à maîtriser l’affaire et donc à trouver un bon tutoriel . Le canard va me dénicher ça . Mais en parallèle je vais quand même continuer mes bricolages car je trouve ça très instructif : du _en même temps_ en quelque sorte .

merci .

déjà une remarque : ouvrir un menu déroulant ( _commande_ par exemple ) est quasi instatantané mais le fermer avec Échap ne l’est pas . Dommage , car même si 1s c’est court quand on est habitué à la quasi instantanéité ça ne passe pas inaperçu . Mais comme je n’ai pas encore lu de tuto … ça pourra peut-être se régler .

---

<div class="post-metadata">

**Author:** ![anon29980398](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/f4b2a3/32.png) [@anon29980398](https://www.debian-fr.org/u/anon29980398)\
**Post date:** [Novembre 16, 2022, 1:04 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/28 "2022-11-16T13:04:49Z")

</div>

Je ne sais pas quel environnement de Bureau tu utilises, et donc pas non plus le nom du programme émulateur de terminal que tu utilises, mais sur la plupart de ces programmes émulateur de terminal, il faut désactiver les raccourcis utilisant les touches F10, F1 et autres.  
Ci-dessous, c’est `xfce4-terminal` :

 ![Capture d’écran_2022-11-16_13-53-24](https://www.debian-fr.org/uploads/default/original/2X/8/89f8e17670426f14b680bde219a7bcd8be384dcd.png)

Une fois ces raccourcis désactivés dans le terminal, quand tu auras lancé la commande `mc` tu pourras utiliser la touche F10 (plus efficace que la touche Échap) et tous les autres raccourcis clavier utilisés par **midnight commander** et le raccourci clavier F1 te permettra d’accéder à l’aide en ligne.

En attendant, tu peux toujours cliquer en bas et à droite de la fenêtre de **midnight commander** pour **Quitter** (le numéro de la touche de fonction est affiché juste avant)

Tu peux aussi cliquer sur **Nom** ou **Taille** ou **Date de Modifi** pour modifier l’ordre de tri des colonnes

---

<div class="post-metadata">

**Author:** ![zao](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/z/ce7236/32.png) [@zao](https://www.debian-fr.org/u/zao)\
**Post date:** [Novembre 16, 2022, 2:06 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/29 "2022-11-16T14:06:41Z")

</div>

je suis aussi dans l’environnement Xfce , que j’avais sélectionné avec autant de soin que Jacques Vabre le fait pour son café , et j’ai donc reproduit l’onglet «&nbsp;avancé&nbsp;» tel que je le vois : impeccable ! F10 est quasi instantané à la fermeture , non plus de **mc** , mais d’un menu déroulant .

Tant que j’y suis : aurais-tu un site à recommander qui explique les bonnes pratiques à mettre en œuvre pour réaliser une sauvegarde ? Parce que là aussi je dois être assez rudimentaire .

merci par avance .

---

<div class="post-metadata">

**Author:** ![anon29980398](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/f4b2a3/32.png) [@anon29980398](https://www.debian-fr.org/u/anon29980398)\
**Post date:** [Novembre 16, 2022, 3:43 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/30 "2022-11-16T15:43:55Z")

</div>

À mon humble avis une sauvegarde dépends de l’importance que chacun attache à ses fichiers.

Je ne sauvegarde rien côté système car de nos jours, installer un système ne prend même pas une heure, je ne sauvegarde que mes données personnelles au format texte brut ou éventuellement au format texte CSV de façon à ce qu’ils ne dépendent pas d’une application spécifique, ce qui fait que j’ai besoin de très peu d’espace pour les sauvegarder, et il me suffit de les compacter au format gzip et d’en faire plusieurs copies sur des supports différents.

---

<div class="post-metadata">

**Author:** ![zao](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/z/ce7236/32.png) [@zao](https://www.debian-fr.org/u/zao)\
**Post date:** [Novembre 17, 2022, 8:41 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/31 "2022-11-17T08:41:00Z")

</div>

> [@anon29980398](#):
>
> et d’en faire plusieurs copies sur des supports différents.

je viens d’affecter un portable déjà ancien et poussif lorsque j’en ai hérité ( anciennement W10 ) à la fonction «&nbsp;sauvegarde&nbsp;» : j’aurai donc 2 supports indépendants pour sauvegarder tout ce qui est personnel + quantitté de documents téléchargés depuis des années .

notes :

- lorsque j’ai viré W 10 et installé ( debian 11 / Xfce ) il galopait presque .
- je vais adopter **midnight commander** car rien que cette présentation en face à face de 2 arborescences différentes et indépendantes est vraiment intéressante ,. Couplée aux opérations courantes sur les fichiers et les répertoires il risque vite de devenir indispensable . Tout comme la commande **less** que tu m’avais recommandée l’est devenue . De plus son _aide_ , facile à utiliser , est probablement le meilleur des tutoriels , ce qui n’est malheureusement pas toujours le cas .

---

<div class="post-metadata">

**Author:** ![anon29980398](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/f4b2a3/32.png) [@anon29980398](https://www.debian-fr.org/u/anon29980398)\
**Post date:** [Novembre 17, 2022, 3:16 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/32 "2022-11-17T15:16:34Z")

</div>

Voilà comment j’utilise **mc** pour pouvoir y copier de fichiers sur un système distant par `ssh`

* * *

Je lance la commande `mc`

 ![2022-01-27_00-20-52](https://www.debian-fr.org/uploads/default/original/2X/b/b7b0eb2ff5c6c14dccb7adda7803fa42ad14dc58.png)

J’appuie sur la touche Tab pour passer le curseur dans le panneau de droite (parce que j’ai envie …)  
(mais tout ce que je fais dans `mc` avec le clavier peut aussi être fait avec la souris)

 ![2022-01-27_00-21-04](https://www.debian-fr.org/uploads/default/original/2X/a/ab38c9ff6dbd02e323860523e37a07a709e6eb05.png)

J’appuie sur F9 puis D puis sur H, ou alors je me balade avec les touches flèches  
pour sélectionner `Lien Shell`

 ![2022-01-27_00-21-23](https://www.debian-fr.org/uploads/default/original/2X/5/54dbc85c9f32da286bc5acc02fa5c8c22f9aa948.png)

Je saisis le nom de `login` suivi de `@` puis de l’adresse `IP` (ou bien son nom sur le réseau) du système distant  
puis (mais ce n’est pas indispensable)  
un caractère deux points suivi du chemin où je veux aller sur le système distant

 ![2022-01-27_00-21-48](https://www.debian-fr.org/uploads/default/original/2X/d/df14049761b8d7b242d31bbf430fa32ee15e4069.png)

Après validation, je me retrouve dans mon shell  
où on me demande d’entrer le mot de passe pour établir la connexion ssh  
(Si j’avais configuré une authentification par clef, j’aurais été dispensé de cette contrainte.)

 ![2022-01-27_00-22-12](https://www.debian-fr.org/uploads/default/original/2X/4/41b593e28391b889fbef12be97e4cab7294fb5f1.png)

Me voilà connecté, avec, dans le panneau de gauche les fichiers de ma machine locale,  
et dans le panneau de droite, ceux du système distant connectée par ssh

 ![2022-01-27_00-23-00](https://www.debian-fr.org/uploads/default/original/2X/a/a52a3bb940ee7345eae5c6ba89a637aa7856c6a2.png)

En appuyant sur la touche Tab, je déplace mon curseur sur l’autre panneau  
puis, avec les flèches je positionne le curseur sur le premier répertoire à transférer  
et je tape Ctrl-T pour Taguer/dé-Taguer les répertoires ou/et les fichiers à transférer

 ![2022-01-27_00-23-24](https://www.debian-fr.org/uploads/default/original/2X/3/3e0b0041162efa6e71bda3b4e8677dd272ad392d.png)

Une fois tagués, je lance la copie en appuyant sur F5

 ![2022-01-27_00-23-57](https://www.debian-fr.org/uploads/default/original/2X/7/759a258f5976281aaf3c183969bd574c3b2fe355.png)

Une boîte de dialogue me présente ce qui va être fait  
et me propose de Valider

 ![2022-01-27_00-24-25](https://www.debian-fr.org/uploads/default/original/2X/0/0360dcb2fb7920be2f24ff01f5389956d423bbc6.png)

Je valide, et la copie commence  
la barre de progression du haut indique la progression du transfert du fichier en cours de copie  
et celle du bas, la progression du transfert de tout l’ensemble des fichiers et répertoires à copier

 ![2022-01-27_00-25-07](https://www.debian-fr.org/uploads/default/original/2X/0/0330d833466ab3d42fef344a050b122e4be92e2b.png)

---

<div class="post-metadata">

**Author:** ![littlejohn75](https://www.debian-fr.org/user_avatar/www.debian-fr.org/littlejohn75/32/3840_2.png) [@littlejohn75](https://www.debian-fr.org/u/littlejohn75)\
**Post date:** [Novembre 17, 2022, 8:07 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/33 "2022-11-17T20:07:35Z")

</div>

> [@Verner](#):
>
> Une variante pour investigation:
> 
> ```auto
> lsrep() { i=0 ; j=0 ; k=0 ; l=0 ; echo > ${T:=/tmp/lsrep}
> 
> ```

Vous oublier qu’il a des esprits tordus qui, inspirés par la Révolution française, vont tester la robustesse de cette fonction en tapant

```auto
T='/tmp/-Rf Danton & Robespierre' lsrep

```

En tout cas merci pour le `/bin/ls -A1` cela m’a permis de voir qu’il faut faire le ménage dans $HOME

Cordialement,  
Regards,  
Mit freundlichen Grüßen,  
مع تحياتي الخالصة

* * *

F. Petitjean  
Ingénieur civil du Génie Maritime.

« Il est souvent trop tôt pour savoir s’il n’est pas trop tard. »  
Pierre Dac

« Rien ne sert de penser, faut réfléchir avant. »  
Pierre Dac

---

<div class="post-metadata">

**Author:** ![anon36725218](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/8e8cbc/32.png) [@anon36725218](https://www.debian-fr.org/u/anon36725218)\
**Post date:** [Novembre 18, 2022, 2:22 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/34 "2022-11-18T02:22:28Z")

</div>

Bonsoir,

Personnellement j’opterais pour [Rsync : le meilleur des systèmes de sauvegarde](http://howto.zw3b.fr/linux/securite/rsync-le-meilleur-des-systemes-de-sauvegarde) dont j’ai écris une documentation il y a longtemps.

`rsync` est très compréhensible.

Pour faire une synchronisation de 2 répertoires - sur la même machine - entre 2 disques par exemple.

```
rsync -av source destination

```

Ici entre 2 machines (avec l’option `-e "ssh"` (très, très important) pour faire passer `rsync` dans le protocole SSH donc, **pour que personne ne puisse sniffer ton mot de passe** )

```
rsync -av -e "ssh" source destination 

```

Certes, il n’y a pas la comptabilisation des répertoires/fichiers, nic de coleurs mais pour faire de bonnes sauvegarde c’est le meilleur 😉

* * *

En tout cas super fil, discussion, moi aussi j’ai appris de bonnes choses - Une adresse de @anon29980398 entre autres 🤨 🤣 😊

Bonne nuitée, journée, tout çà… continuation etc.

😉

Salutations,  
Romain

---

<div class="post-metadata">

**Author:** ![zao](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/z/ce7236/32.png) [@zao](https://www.debian-fr.org/u/zao)\
**Post date:** [Novembre 18, 2022, 4:44 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/35 "2022-11-18T04:44:42Z")

</div>

> [@anon29980398](#):
>
> J’avais réalisé (à la _va-vite_ ) une page web pour montrer comment, avec **mc** , je faisais s’afficher les fichiers d’un système distant en m’y connectant par `ssh` pour pouvoir y copier de fichiers.
> 
> Clique sur [ce lien web](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/32)

je viens de tester cette fonction de **mc** et le résultat , de mon point de vue , est sans appel : **mc** est nettement plus agréable et rapide que le protocole **scp** que j’utilisais . En particulier :

- pas de ligne de commande à écrire
- fichier ou répertoire , pas de distinction à faire et on peut les transférer dans la foulée
- résultat visible sur le même écran .

Rien que pour ça , du moins en ce qui me concerne , ce logiciel est un bon invetissement .

**Note 1 : à propos de rsync :**

> `rsync` est très compréhensible.

vs

> rsync le fait parfaitement, mais les réglages sont chatouilleux, très chatouilleux, .., la commande est complexe avec une très longue liste d’options.

Pas pour l’instant , mais à terme , j’essaierai de voir laquelle de ces 2 opinions me correspond le mieux .

**Note 2 : à propos du tutoriel sur rsync**  
il est indiqué ceci :

> ```
> Publication : : Jeudi 17 novembre 2005
> 
> ```
> 
> Modification : Mardi 26 juin 2012

depuis **rsync** a certainement subi des évolutions , tenter d’utiliser un tutoriel aussi ancien est peut-être un peu risqué pour un néophyte , non ?

---

<div class="post-metadata">

**Author:** ![anon36725218](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/8e8cbc/32.png) [@anon36725218](https://www.debian-fr.org/u/anon36725218)\
**Post date:** [Novembre 18, 2022, 1:28 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/36 "2022-11-18T13:28:44Z")

</div>

> [@zao](#):
>
> **Note 1 : à propos de rsync :**
> 
> > `rsync` est très compréhensible.
> 
> vs
> 
> > rsync le fait parfaitement, mais les réglages sont chatouilleux, très chatouilleux, …, la commande est complexe avec une très longue liste d’options.

C’était pour chatouiller @Verner - @zao seulement.

> [@zao](#):
>
> Pas pour l’instant , mais à terme , j’essaierai de voir laquelle de ces 2 opinions me correspond le mieux .

cooL … c’est sympat `rsync` 🙂

> [@zao](#):
>
> **Note 2 : à propos du tutoriel sur rsync**  
> il est indiqué ceci :
> 
> > ```auto
> > Publication : : Jeudi 17 novembre 2005
> > 
> > ```
> > 
> > Modification : Mardi 26 juin 2012

Oui, je connais et utilise rsync depuis 2005 - J’avais écris un mémo - avec une petite introduction pour expliquer la force de ce système de sauvegarde - En 2012, j’ai dû ajouter/changer le script complet en écrivant un code plus propre et plus complet que seulement l’introduction de type `rysync -av dir_source dir_destination`

> [@zao](#):
>
> depuis **rsync** a certainement subi des évolutions , tenter d’utiliser un tutoriel aussi ancien est peut-être un peu risqué pour un néophyte , non ?

Non, je ne sais même pas s’il ont ajoutés de fonctionnalités.  
L’important c’est de toujours avoir la documentation officielle et de bien visualiser/comprendre les fonctionnalités des options.

Comme avec toutes les commandes linux tu peut demander les man pages - par exemple : `man rsync`

* * *

tu pourrais essayer de créer un dossier et y coller un fichier ou 2, un répertoire ou 2 (oOops\* j’ai oublié `--delete` (par default `rsync` n’efface rien)" :

_NdMoi-même 15h50 → oOops j’ai oublié `--delete` (par default `rsync` n’efface rien)  
donc il faut ajouter l’option `--delete` dans les requête `rsync` pour supprimer les fichiers supprimés_🤣

```
#--------------------------------------------
# créer le dossier de sauvegarde
mkdir /tmp/ma_sauvegarde/

#--------------------------------------------
# créer un dossier que tu souhaiterais synchroniser 
mkdir /tmp/nouveau_dossier/

# créer un fichier vide
touch /tmp/nouveau_dossier/nouveau_fichier

# écrire "salut" dans le nouveau fichier
echo salut > /tmp/nouveau_dossier/nouveau_fichier

# Tester une première synchro :
rsync -av /tmp/nouveau_dossier/ /tmp/ma_sauvegarde/

# vérifier que la sauvegarde a fonctionné
ls -l /tmp/ma_sauvegarde/

#--------------------------------------------
# ajouter un autre fichier dans le répertoire à synchroniser 
touch /tmp/nouveau_dossier/nouveau_deuxieme_fichier

# Lancer la synchro :
rsync -av /tmp/nouveau_dossier/ /tmp/ma_sauvegarde/

# vérifier que la sauvegarde (synchro) a fonctionné
ls -l /tmp/ma_sauvegarde/

#--------------------------------------------
# modifier le 1er fichier avec un "salut" dedans et y ajouter "modification du fichier"
echo "modification du fichier" >> /tmp/nouveau_dossier/nouveau_fichier

# Lancer la synchro :
rsync -av /tmp/nouveau_dossier/ /tmp/ma_sauvegarde/

# vérifier que la sauvegarde (synchro) a fonctionné
cat /tmp/ma_sauvegarde/nouveau_fichier

#--------------------------------------------
# on peut continuer
# supprimer le 2e fichier vide par exemple
rm -v /tmp/nouveau_dossier/nouveau_deuxieme_fichier

# Lancer la synchro (avec un delete comme je disais dans ma note plus haut) :
rsync --delete -av /tmp/nouveau_dossier/ /tmp/ma_sauvegarde/

# vérifier que la sauvegarde (synchro) a fonctionné
ls -l /tmp/ma_sauvegarde/

```

etc..

Dans le [tuto](http://howto.zw3b.fr/linux/securite/rsync-le-meilleur-des-systemes-de-sauvegarde) que j’ai écris, justement, j’explique comment utiliser les options `rynsc --backup --backup-dir` pour qu’en plus de réaliser, seulement, une synchronisation de répertoires,  
faire une sauvegarde des fichiers modifier ou supprimer → que si par erreur tu ne souhaitais pas supprimer le fichier `/tmp/nouveau_dossier/nouveau_deuxieme_fichier` celui-ci aurait été déplacé de ` /tmp/ma_sauvegarde/nouveau_deuxieme_fichier` vers `/tmp/ma_sauvegarde-2022-11-18/nouveau_deuxieme_fichier`

Et que dans le répertoire de la synchronisation/sauvegarde «&nbsp;courante&nbsp;» → celui-ci `/tmp/ma_sauvegarde/` ton fichier ni soit plus.  
Pour que le répertoire `/tmp/nouveau_dossier/` et le répertoire `/tmp/ma_sauvegarde/` soit «&nbsp;équivalent&nbsp;».  
Mais par précaution, toutes modifications ou suppression de fichiers du répertoire `/tmp/nouveau_dossier/` soit placées dans un répertoire de sauvegarde `/tmp/ma_sauvegarde-2022-11-18/` 🙂

😉

* * *

une fois que tu as compris le texte de mon explication, tu peut essayer çà → l’option `--backup` :

```
# tu re-crées un autre nouveau fichier dans ton répertoire "courant"
touch /tmp/nouveau_dossier/mon_autre_fichier

# Lancer la synchro :
rsync -av /tmp/nouveau_dossier/ /tmp/ma_sauvegarde/

# vérifier que la sauvegarde (synchro) a fonctionné - tu as tes 2 fichiers.
ls -l /tmp/ma_sauvegarde/

# puis après tu essaies les options rysync --backup en plus
rsync --backup --backup-dir=/tmp/ma_sauvegarde-2022-11-18/ -av /tmp/nouveau_dossier/ /tmp/ma_sauvegarde/

# vérifier que la sauvegarde a fonctionné
ls -l /tmp/ma_sauvegarde/

# rien n'a changé puisque tu n'as rien modifié.
# donc, modifie le fichier en écrivant quelque chose dedans.
echo "modification du fichier mon_autre_fichier" > /tmp/nouveau_dossier/mon_autre_fichier

# Lancer la synchro avec le BACKUP supplémentaire et le delete (maintenant que l'on a un dossier de sauvegrade au cas où) :
rsync --backup --backup-dir=/tmp/ma_sauvegarde-2022-11-18/ --delete -av /tmp/nouveau_dossier/ /tmp/ma_sauvegarde/

# vérifier que la sauvegarde a fonctionné (donc il y écrit "modification du fichier mon_autre_fichier" dans le fichier qui se trouve dans ton répertoire "ma_sauvegarde"
cat /tmp/ma_sauvegarde/mon_autre_fichier

# Vérifier que la sauvegarde a fonctionnée avec seulement le fichier vide "mon_autre_fichier" :
ls -l /tmp/ma_sauvegarde-2022-11-18/

```

etc.

Tu pourrais supprimer ton fichier /`tmp/nouveau_dossier/mon_autre_fichier` et lancer une synchro avec l’option de backup et tu t’apercevras que le fichier a été supprimé de ton répertoire «&nbsp;ma\_sauvegarde&nbsp;» et qu’il à été déplacé dans le répertoire «&nbsp;ma\_sauvegarde-2022-11-18&nbsp;» avec la dernière synchro effectuée, donc il contient le texte «&nbsp;modification du fichier mon\_autre\_fichier&nbsp;».

😉

Bonne journée à vous.

Romain

---

<div class="post-metadata">

**Author:** ![dindoun](https://www.debian-fr.org/user_avatar/www.debian-fr.org/dindoun/32/4281_2.png) [@dindoun](https://www.debian-fr.org/u/dindoun)\
**Post date:** [Novembre 18, 2022, 2:02 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/37 "2022-11-18T14:02:07Z")

</div>

> [@anon36725218](#):
>
> > [@zao](#):
> >
> > depuis **rsync** a certainement subi des évolutions , tenter d’utiliser un tutoriel aussi ancien est peut-être un peu risqué pour un néophyte , non ?
> 
> Non, je ne sais même pas s’il ont ajoutés de fonctionnalités

salut  
merci pour ton post  
ce serait bien de vérifier les possibles obsolescences si tu proposes ce lien.  
Ca te fera réviser 🙂

A propos de rsync : j’aime bien grsync ( gui rsync ) qui à l’avantage de donner la commande rsync qu’il utilise avec les options, donc utilisable sans gui

---

<div class="post-metadata">

**Author:** ![anon36725218](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/8e8cbc/32.png) [@anon36725218](https://www.debian-fr.org/u/anon36725218)\
**Post date:** [Novembre 18, 2022, 2:15 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/38 "2022-11-18T14:15:33Z")

</div>

> [@dindoun](#):
>
> ce serait bien de vérifier les possibles obsolescences si tu proposes ce lien.  
> Ca te fera réviser 🙂

Y’a pas d’obsolescence dans ma [doc rysnc](http://howto.zw3b.fr/linux/securite/rsync-le-meilleur-des-systemes-de-sauvegarde) !

Romain

---

<div class="post-metadata">

**Author:** ![anon36725218](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/8e8cbc/32.png) [@anon36725218](https://www.debian-fr.org/u/anon36725218)\
**Post date:** [Novembre 18, 2022, 2:33 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/39 "2022-11-18T14:33:45Z")

</div>

Ce qui est super avec `rsync` c’est que çà garde la date exacte des fichiers → sur le répertoire de sauvegarde (contrairement à FTP ou SCP par exemple).

Et que, si tu as beaucoup de fichiers dans le répertoire à synchroniser (et qu’il y a un problème par exemple) → la synchronisation (en relançant la commande) reprendrait au dernier fichier (ne récupère pas tous les fichiers du répertoire), donc ceux déjà télécharger qui sont identique ne sont plus jamais envoyer dans le répertoire de sauvegarde.

Ça évite de galérer tous les jours, en récupérant seulement les nouveaux fichiers ou ceux modifiés et pas toute l’arborescence.

🙂

---

<div class="post-metadata">

**Author:** ![anon29980398](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/f4b2a3/32.png) [@anon29980398](https://www.debian-fr.org/u/anon29980398)\
**Post date:** [Novembre 18, 2022, 3:04 UTC](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/40 "2022-11-18T15:04:10Z")

</div>

J’ai modifie [mon message](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404/32) en remplaçant le lien web par une copie du contenu de la page web.

[Page précédente](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404.md?page=1)

[Page suivante](https://www.debian-fr.org/t/ameliorer-la-presentation-de-la-sortie-de-find/87404.md?page=3)
