Intereting Posts
Как устранить неполадки при переключении макета, когда он «блокируется» на определенном макете? Задача, не выполняемая crontab Прокси-сервер с аутентификацией, не работающей в командной строке CentOS – проверьте, обновляется ли он Что делать, если apt-get -f не работает? Можете ли вы представить новые пакеты для существующих выпусков Debian? Запуск Debian 9 завершается неудачно с: `Не удалось запустить Raise network interfaces` после замены материнской платы Как работают «параметры» в сценариях оболочки? Как удалить привилегии root в сценариях оболочки? Разрывает ли линия поддержки unix календаря `pal`? Обнаружение необязательного аргумента функции awk Совпадение нескольких шаблонов awk и печать в одной строке Самый простой способ добавить поиск данных на веб-сайт HTML на Ubuntu? Использование ключевого файла в качестве пароля с OpenSSL Как часто обновления отправляются клиенту VNC?

удалите ^ M из solaris perl одним лайнером в том же файле

обычно, чтобы удалить ^ M из файла, который мы делаем

dos2unix test.txt test.txt tr -d '\r' < old.file > new.file 

но этот подход настаивает на создании нового файла

если мы не хотим создавать другой файл, тогда решение будет выглядеть следующим образом: пример perl one liner

 perl -pi -e 's/^M//g' file1 

Я попробовал это на Solaris, но по неясным причинам, ^ М все еще существует в файле?

пожалуйста, сообщите, что здесь не так.

Perl тоже нужен.

 perl -pi -e 's/^M//g' file1 ^^ - should be \r 

Хотя на самом деле вы, вероятно, просто хотите придерживаться окончаний строк.

 perl -pi -e 's,\r\n,\n,g' file1 

Хотя на самом деле – для этого вам не нужен perl. sed отлично способен:

 sed -i.bak -e 's,\r\n$,\n,g' file1 

Вам нужно использовать \r , not ^M для соответствия символам возврата каретки. ^M удалил все M символов в начале строки, поэтому вы можете проверить, что ваш файл по-прежнему в порядке …