Все случаи regex удалены, не используя “глобальный” модификатор

Синтаксис tcsh является несовместимым с синтаксисом sh.

Если Ваша оболочка входа в систему является sh, и Вы только используете tcsh в интерактивном режиме, устанавливаете LS_COLORS в Вашем ~/.profile.

Если Вы имеете (t) csh как Ваша оболочка входа в систему, можно запустить скрипт, распечатать значение LS_COLORS и набор это внутри csh (по-видимому, в Вашем ~/.login).

setenv LS_COLORS `sh -c '. ~/path/to/file.sh; echo "$LS_COLORS"'`
0
10.02.2014, 01:24
1 ответ

Ваше понимание было бы корректно, если бы regex были применены к файлу в целом. Это не то, как sed списки: это работает линию за линией вместо этого. Таким образом g модификатор только сыграл бы роль, если Ваш regex мог бы соответствовать многократно на той же строке. В Вашем случае замена была применена только однажды к каждой строке так естественно были удалены, оба экземпляра.

Хлебайте целый файл вместо этого и посмотрите различие:

perl -p0777e 's/[^.]*mobile phones[^.]*\.//' sentence.txt > sentence2.txt
2
28.01.2020, 02:37

Теги

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