У меня странная проблема, для которой я не вижу никаких объяснений. У меня есть файл со следующим содержанием:sed отказывается заменить шаблон -> файл (кодирование) ошибки?
<[email protected]:~> head -n 2 myfile
f800671 1 V80068 0.000 2.262 DUMMY heeft één van hen niet gezegd
f800671 1 V80068 2.262 4.090 DUMMY la*v Belgique*v sera*v latine*v
Я хочу, чтобы удалить все * V (иностранные слова) маркеры следующим образом:
<[email protected]:~> head -n 2 myfile | sed 's/*v//'
f800671 1 V80068 0.000 2.262 DUMMY heeft één van hen niet gezegd
f800671 1 V80068 2.262 4.090 DUMMY la*v Belgique*v sera*v latine*v
Нет счастья там. Команда sed кажется правильной. Это основная команда, поэтому не сильно рисковать, но я все равно проверил:
echo "Belgique*v" | sed 's/*v//'
Belgique
Я полагаю, что есть что-то не так с файлом, но я честно не могу себе представить, что. Я проверил кодировку, и это простой текст ISO-8859.
Любые идеи?
Хорошо, я идиот, или я должен был хотя бы получить кофе первым. Я полностью забыл о флагове g. – niefpaarschoenen
'*' не является особым как первый символ, по крайней мере, в моей версии 'sed'. Не нужно избегать этого, но я согласен, что это хорошая привычка. – Birei
@Birei Вы правы, я никогда этого не замечал. –