мой сценарий запуска не запускается, когда я хочу

Для этого можно использовать tr, его основная цель — перевод символов:

echo 111111100000000000000 | tr 01 10

Ваша команда sedзаменяет все 0 на 1, что приводит к строке, содержащей только 1 с (исходные 1 с и все замененные 0 с ), а затем заменяет все 1 с 0 с, в результате чего строка содержит только 0 с.

В длинных потоках trбыстрее, чем sed; для файла размером 100 МиБ:

$ time tr 10 01 < bigfileof01s > /dev/null
tr 10 01 < bigfileof01s > /dev/null  0.07s user 0.03s system 98% cpu 0.100 total

$ time sed y/10/01/ < bigfileof01s > /dev/null
sed y/10/01/ < bigfileof01s > /dev/null  3.91s user 0.11s system 99% cpu 4.036 total

0
20.10.2020, 14:03
0 ответов

Теги

Похожие вопросы