Чтобы преобразовать, например, все файлы * .h
в формат DOS:
sed -i '/\r/! s/$/\r/' *.h
Условие / \ r /!
указывает sed пропустить все строки, в которых уже есть возврат каретки. По этой причине можно безопасно запускать эту команду несколько раз для одного и того же файла.
Команда подстановки s / $ / \ r /
добавляет возврат каретки в конец каждой строки.
Параметр -i
указывает sed изменить файл на месте. Если кто-то хочет сохранить резервные копии оригиналов:
sed -i.bak '/\r/! s/$/\r/' *.h
Для преобразования на месте всех файлов *. H
из DOS в Unix:
sed -i 's/\r$//' *.h
Эта команда также безопасна для запуска несколько раз для одних и тех же файлов.
Для BSD (OSX) sed аргумент параметра -i
является обязательным, а не необязательным. Таким образом, используйте -i.bak
для создания резервной копии с расширением .bak
или используйте -i ''
для изменения файлов на месте без резервного копирования. .