est-ce qu’il y a un?
quelque chose que je pourrais utiliser comme ceci:
$ cat someFileWithLongLines.txt | wrap -80 --indent|less
GNU coreutils a une commande appelée fmt
:
$ fmt -40 -t lorem
Lorem ipsum dolor assis amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercice ullamco laboris nisi ut aliquip ex ea commodo conséquence Duis aute irure dolor en reprehenderit en velu volupté esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Edit: Comme vous pouvez le voir, fmt
rompt les lignes sur les limites de mots dans la largeur donnée. Contrastez ceci avec la limite dure du fold
. Le type d’indentation utilisé par fmt
n’est peut-être pas ce que vous recherchez, mais vous pouvez le canaliser (sans l’option -t
) via pr
pour obtenir un retrait de style de marge:
fmt -40 lorem | pr -To 6
Vous voudrez peut-être la commande fold
.
$ fold -w 80 file.txt
ou
$ cat file.txt | fold
Vous pouvez indenter avec pr
, si vous voulez, par exemple.
$ fold -w 76 -s file.txt | pr -T --indent=4
La commande est appelée “fold”, mais elle ne prend pas en charge l’indentation des sections de lignes enveloppées. Vous devrez vous débrouiller pour celui-là.
La commande s’appelle fold.
$ cat someFileWithLongLines.txt | plier
vous pouvez utiliser awk
width=10 awk -vw="$width" '{ i=1 while( length(substr($0,i,w) ) ){ print substr($0,i,w) i+=w } }' file
sortie:
$ more file this is a line 1 this is a line 2 $ fold -w 10 file this is a line 1 this is a line 2 $ ./shell.sh this is a line 1 this is a line 2