Zauważyłem, że fmt używa dwóch znaków spacji podczas łączenia zdań w liniach.
Dowództwo:
$ fmt << EOF
Hello world.
This is a nice place. And a nice website too. I come here
to ask important questions.
Like this one.
EOF
Wydajność:
Hello world. This is a nice place. And a nice website too. I come here to ask important questions. Like this one.
Czy istnieje sposób na wyłączenie tego zachowania i użycie zamiast tego pojedynczego miejsca?
Wiem, że trwa długa debata, czy należy użyć 1 czy 2 spacji po tym okresie. Ale to nie ma znaczenia w moim przypadku. Chcę tylko częściowo sformatować istniejące pliki tekstowe, wpisz 1 spację po kropce.
sed 's/\. /. /g'
. Z twoim dokumentem tutaj musisz zacząć od{ fmt << EOF
i dodaj} | sed 's/\. /. /g'
w następnej linii. Aby usunąć wszystkie spacje, użyjsed 's/ */ /g'
zamiast tego (zastąp gwiazdkę przestrzenno-przestrzenną spacją, jeśli format nie jest wyraźny).