Удалите вкладки и пустые строки с помощью grep/sed/tr

У меня есть текстовый файл, который выглядит так:

> cat test.txt

    “Il faut attendre l’expiration du cache.”


    “C'est sûrement un problème lié à l'hébergement.”


    “Tu as du cliquer de travers.”


> cat -e test.txt
$
    �M-^@M-^\Il faut attendre l�M-^@M-^Yexpiration du cache.�M-^@M-^]$
    $
$
    �M-^@M-^\C'est sûrement un problème lié à l'hébergement.�M-^@M-^]$
    $
$
    �M-^@M-^\Tu as du cliquer de travers.�M-^@M-^]$
    $

Я хочу, чтобы мой файл выглядел так:

> cat test.txt
“Il faut attendre l’expiration du cache.”
“C'est sûrement un problème lié à l'hébergement.”
“Tu as du cliquer de travers.”

Для этого я попробовал sed -e 's/^\s*//' -e '/^$/d' test.txt, но не могу получить желаемый результат. Он удаляет только одну пустую строку, и я до сих пор не понял, как удалить вкладки.

> sed -e 's/^\s*//' -e '/^$/d' test.txt
    “Il faut attendre l’expiration du cache.”

    “C'est sûrement un problème lié à l'hébergement.”

    “Tu as du cliquer de travers.”

Как я могу удалить все пустые строки и вкладки в начале строк?


person Mehdi    schedule 19.03.2016    source источник


Ответы (1)


Вероятно, у вас нет GNU Sed. С GNU Sed ваша команда sed должна работать.

Есть еще одно решение, которое вы можете попробовать:

sed -e 's/^[[:space:]]*//' -e '/^$/d' test.txt

или, чтобы просто удалить использование пробелов и вкладок:

sed -e 's/^[ \t]*//' -e '/^$/d' test.txt
person Kai Sternad    schedule 19.03.2016