logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 04-10-2024 07:06:12

Jacques84
Membre
Distrib. : Debian GNU/Linux 12 bookworm (x86-64)
Noyau : Linux 6.1.0-26-amd64
(G)UI : Cinnamon 5.6.8
Inscription : 04-08-2020

tree : erreur affichage

Bonjour,
j'ai besoin d'aide pour résoudre un problème lier à l'utilisation de tree.
J'ai une différence entre l'affichage de l'arborescence d'un répertoire sur le terminal et l’écriture de cette même commande vers un fichier.

voici un exemple d'affichage sur le terminal avec tree


├── AG2022
│   ├── bilan et trésorerie 2021-2022.pdf
│   ├── Budget 2022-2023 2021.pdf
│   ├── Convocation et ordre du jour AG 2022.pdf
│   ├── CR AGO 2022.pdf
│   ├── pouvoir ago 2022.pdf
│   ├── Présence_AG2022.pdf
│   └── Résolutions AGO 2022.pdf
├── AG2023
│   ├── 2023-04-01_feuille présence AGO.pdf
│   ├── Compte-rendu AGO du 01 avril 2023.pdf
│   ├── Convoc AGO 2023.pdf
│   ├── pouvoir ago 2023.pdf
│   ├── Résolutions ago 2023.pdf
│   └── Retour greffes des assos APT.pdf
 



voici l'affichage du fichier  issu de la commande tree -o "mon fichier.txt" du même répertoire
[01;34m.[0m
├── [01;34mAG2022[0m
│   ├── bilan et trésorerie 2021-2022.pdf
│   ├── Budget 2022-2023 2021.pdf
│   ├── Convocation et ordre du jour AG 2022.pdf
│   ├── CR AGO 2022.pdf
│   ├── pouvoir ago 2022.pdf
│   ├── Présence_AG2022.pdf
│   └── Résolutions AGO 2022.pdf
├── [01;34mAG2023[0m
│   ├── 2023-04-01_feuille présence AGO.pdf
│   ├── Compte-rendu AGO du 01 avril 2023.pdf
│   ├── Convoc AGO 2023.pdf
│   ├── pouvoir ago 2023.pdf
│   ├── Résolutions ago 2023.pdf
│   └── Retour greffes des assos APT.pdf

Vous aurez remarqué que des caractères sont certainement mal interprétés par stdout (je pense?) car quelque soit le logiciel pour ouvrir le fichier "monfichier.txt" (gedit, writer,etc..) l'affichage est identique. quelqu'un peut-il m'aider à résoudre ce petit problème ?
merci d'avance

Hors ligne

#2 04-10-2024 07:26:54

Croutons
Membre
Distrib. : Debian12
Noyau : Linux 6.1.0-13-amd64
(G)UI : Fluxbox(NakeDeb)
Inscription : 16-12-2016

Re : tree : erreur affichage

hello
c'est parce qu'il y a du code pour afficher en couleur dans le terminale
le code doit etre interprété par le terminale

Pour ouvrir le fichier dans un éditeur il faut désactiver la colorisation

tree -n


-->les cahiers du debutant<--      WikiDF-->Découvrir les principales commandes Linux<-- 
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde

Hors ligne

#3 04-10-2024 07:52:40

agp91
Membre
Distrib. : GNU Debian stable
(G)UI : xfce
Inscription : 12-02-2023

Re : tree : erreur affichage

Salux,

La commande tree produit un retour formaté par des séquences d'échappement afin d'apporter de la couleur dans le terminal (par exemple en bleu gras pour les répertoires).

  • [01;34m met en bleu gras

  • [0m met fin au formatage


Ces séquences d'échappement ont été enregistrées dans ton fichier  "mon fichier.txt" et ne sont pas interprétés par les éditeurs de texte.
Affichées dans le terminal, ces séquences auront disparu et la sortie retournée, formatée (les séquences d'échappement, interprétées par le terminal)... Les répertoires seront en bleu gras.

cat "mon fichier.txt"



Comme l'indique Croutons, pour que tree ne retourne pas de séquence d'échappement, il faut utiliser l'option -n

tree -no "mon fichier.txt"

Le manuel tree a écrit :

..
tree est un programme de listage récursif de répertoires qui produit une liste de fichiers indentés en profondeur, coloré à la manière de dircolors si la variable d'environnement LS_COLORS est définie et que la sortie est sur une console tty.
...
OPTIONS GRAPHIQUES
...
-n
Désactiver tout le temps la colorisation, cette option est écrasée par l'option -C, mais écrase CLICOLOR_FORCE si présente.
...


[edit]Hihi, le temps d'écrire le post...

Dernière modification par agp91 (04-10-2024 07:58:19)


La liberté est gratuite et accessible à tous. Sinon ça n'en est pas.

Hors ligne

#4 04-10-2024 07:56:32

Jacques84
Membre
Distrib. : Debian GNU/Linux 12 bookworm (x86-64)
Noyau : Linux 6.1.0-26-amd64
(G)UI : Cinnamon 5.6.8
Inscription : 04-08-2020

Re : tree : erreur affichage

merci agp91 et Croutons.
parfaitement clair et problème résolu !:D

Hors ligne

#5 04-10-2024 08:06:48

Croutons
Membre
Distrib. : Debian12
Noyau : Linux 6.1.0-13-amd64
(G)UI : Fluxbox(NakeDeb)
Inscription : 16-12-2016

Re : tree : erreur affichage

si tu veux utiliser tree directement dans le terminale, tu peux utiliser un pager comme less
ce qui évite un défilement continu sans avoir la possibilité de revenir au début
par contre tu perds la couleur, il y a des options de sortie en fichier html ou json

tree|less


avec less on a la possibilité d'utiliser les flèches du clavier ,pagedown et pageup, début et Fin

edit: j'ajouterais que tree n'est pratiquement pas utilisable sans pager, a moins d'augmenter le nombre de ligne en historique dans les paramétrages de son terminale pour pouvoir revenir au début du listage

Dernière modification par Croutons (04-10-2024 08:12:37)


-->les cahiers du debutant<--      WikiDF-->Découvrir les principales commandes Linux<-- 
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde

Hors ligne

Pied de page des forums