# Copier/coller depuis un terminal sans espaces superflus !

**URL:** <https://www.debian-fr.org/t/copier-coller-depuis-un-terminal-sans-espaces-superflus/34423>\
**Category:** Trucs et Astuces\
**Created:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/copier-coller-depuis-un-terminal-sans-espaces-superflus/34423 "2016-02-21T03:40:51Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/copier-coller-depuis-un-terminal-sans-espaces-superflus/34423/1 "2016-02-21T03:40:51Z")

</div>

Ça m’arrive régulièrement, comme à beaucoup, de devoir copier/coller le résultat de commandes d’un terminal vers ailleurs (par exemple le forum).  
Mais certaines commandes ont tendance à rajouter des espaces superflus en fin de ligne (hein, aptitude ? ![:013](https://www.debian-fr.org/uploads/default/original/1X/086709e9e4d48f0fa24e42243bbce857fc2be47f.gif "colere")).  
Quand c’est pour coller dans la plupart des éditeurs de texte ça passe encore, ils ont quasiment tous une option “supprimer les espaces de fin” ou au minimum un rechercher/remplacer par expressions régulières, donc on peut s’en sortir.  
Mais c’est pour le forum que ça devient plus gênant, surtout lorsqu’on veut entourer le tout d’un bloc [code]… Les espaces superflus provoquent alors parfois des sauts de ligne intempestifs, bref, pas terrible.

Du coup j’avais fait un petit script qui s’occupe de supprimer les espaces superflus soit au début des lignes, à la fin, ou les deux :

[code]# cat \> /usr/local/bin/trim \<\< EOF  
#!/bin/sh  
case “$1” in

# Effacer à gauche : -b (begin) ou -l (left)

-b|-l)  
sed ‘s@^[\t]+@@g’  
;;

# Effacer à droite : -e (end) ou -r (right)

-e|-r)  
sed ‘s@[\t]+$@@g’  
;;

# Effacer les deux

\*)  
sed ‘s@^[\t]+@@g;s@[\t]+$@@g’  
;;  
esac  
EOF

# chmod +x /usr/local/bin/trim[/code]

On peut aussi rajouter les alias suivants à son ~/.bashrc :

`alias ltrim='trim -l'
alias rtrim='trim -r'`

Du coup, plus besoin de s’emmerder la vie à supprimer les espaces gênants (sur mon écran en 1920 de large les deux premières lignes de résultat s’affichent comme si j’avais sauté une ligne entre chaque, à cause des espaces superflus, alors qu’en réalité il n’en est rien ; et si je réduis la fenêtre horizontalement la distance entre ces lignes augmente encore) :

`$ aptitude search ~ilinux-image -F '%p'
linux-image-3.0.0-2-amd64                                                                                                                                                                                                                    
linux-image-amd64                                                                                                                                                                                                                            
$ aptitude search ~ilinux-image -F '%p' | rtrim
linux-image-3.0.0-2-amd64
linux-image-amd64`

Et bien entendu, ça sert aussi dans plein d’autres cas que pour le forum. 😉

---

<div class="post-metadata">

**Author:** ![Rantanplan\_aussi](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/r/258eb7/32.png) [@Rantanplan\_aussi](https://www.debian-fr.org/u/Rantanplan_aussi)\
**Post date:** [Février 21, 2016, 3:53 UTC](https://www.debian-fr.org/t/copier-coller-depuis-un-terminal-sans-espaces-superflus/34423/2 "2016-02-21T03:53:27Z")

</div>

Hello ![:033](https://www.debian-fr.org/uploads/default/original/1X/42cd8bd0447ecac24cdff1e26fa990a5c8442791.gif "petard")

Intéressant, tu peux remplacer tes `[\t] par des [[:blank:]]`dans tes sed

By-by
