Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2693 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Interpréter une séquence d'échappement sur Gnu/Linux

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Interpréter une séquence d'échappement sur Gnu/Linux

n°2171570
Profil sup​primé
Posté le 16-01-2013 à 20:31:20  answer
 

Bonjour, j'y connais rien en terminaux.
je cherche comment récupérer dans un fichier texte formaté par des séquences d'échappements , la sortie d'un programme qui génère le texte.
J'ai fait une simple redirection mon_prog > output.txt, mais la s'affiche comme ceci :

[;H

avec le caractère esc avant.

mood
Publicité
Posté le 16-01-2013 à 20:31:20  profilanswer
 

n°2171632
Profil sup​primé
Posté le 17-01-2013 à 12:05:17  answer
 

salut,
 
tu peux lire le fichier, ou en pipant la sortie du programme, avec `less -r' pour avoir un affichage correct.

n°2171680
Profil sup​primé
Posté le 17-01-2013 à 18:10:58  answer
 

Merci watael.
 
Mais ça va pas parce que j'ai toujours le même problème.
C'est à dire que le fichier de sortie, n'est pas interprété.

n°2171682
Profil sup​primé
Posté le 17-01-2013 à 18:26:25  answer
 

que veux-tu dire par «pas interprété» ?
quel programme ?
le caractère d'échappement fait-il effectivement un seul caractère  ?

n°2171683
Profil sup​primé
Posté le 17-01-2013 à 18:35:01  answer
 

1) je retrouve avec une redirection comme "less -r output.txt > test.txt", avec les mêmes séquences d'échappement.
2)Mon programme.
3) ma foi esc est le caractère n°27 en décimal. C'est tout.


Message édité par Profil supprimé le 17-01-2013 à 18:36:48
n°2171690
gilou
Modérateur
Modzilla
Posté le 17-01-2013 à 19:09:53  profilanswer
 

C'est les séquences d'échappement ansi d'un VT100: http://www.termsys.demon.co.uk/vtansi.htm

Citation :

Cursor Control
 
Cursor Home   <ESC>[{ROW};{COLUMN}H
 
    Sets the cursor position where subsequent text will begin. If no row/column parameters are provided (ie. <ESC>[;H), the cursor will move to the home position, at the upper left of the screen.


A+,


Message édité par gilou le 17-01-2013 à 19:10:39

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2171695
Profil sup​primé
Posté le 17-01-2013 à 19:27:32  answer
 

Citation :

2)Mon programme.

alors réécris-le sans ces séquences d'échappement !
ou ajoute une option, de manière à choisir le type d'affichage souhaité,
 
ou selon que l'affichage se fait sur un terminal ou est redirigé.
 
en shell (parce que je ne fais pas de C), ce serait:

Code :
  1. test -t 1 && <affichage sur tty> || <affichage redirigé>


Message édité par Profil supprimé le 17-01-2013 à 19:31:54
n°2171697
Profil sup​primé
Posté le 17-01-2013 à 19:34:10  answer
 

Comme le signale Gilou, je suis sur un VT100, y aurait pas un moyen de simuler un vt100 et de rediriger la sortie ?


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Interpréter une séquence d'échappement sur Gnu/Linux

 

Sujets relatifs
[PHP/Linux] Shell_exec[Résolu] [GNU/Linux] Redirection temporaire de la sortie standard
Sous Linux, logger un script shell[RESOLU] socket inter-process C/PHP linux
(Python) Sous séquence contigues[MySQL Linux] Bases de données sur différentes partitions?
différence de perfs énorme entre Linux/Windows avec CUDADirectX sur linux
broadcast UDP sous linux et UDP + connect 
Plus de sujets relatifs à : Interpréter une séquence d'échappement sur Gnu/Linux


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR