LinuxForum.Fans
Тема

Как преобразовать конец строки в скрипте отредактированном в Windows

Автор: user160 13 сообщений 4719 просмотров
#309643

Добрый день.

Имеется Debian.
В инете скачал скрипт и редактировал его еще в Windows.
Во время попыток выполнения его в Debian система выдает сообщение об ошибке.
Анализ содержимого показал, что хвосты строк содержат виндовые символы конца строк.

Есть способ быстрой замены конца строк на Линуксовые?
В gedit я такого не нашёл :(

#309646
user160 написал:
Добрый день.

Имеется Debian.
В инете скачал скрипт и редактировал его еще в Windows.
Во время попыток выполнения его в Debian система выдает сообщение об ошибке.
Анализ содержимого показал, что хвосты строк содержат виндовые символы конца строк.

Есть способ быстрой замены конца строк на Линуксовые?
В gedit я такого не нашёл :(

1. Заменой, через regexp.
2. В far-е(Windows).

#309654
user160 написал:

В gedit я такого не нашёл :(

Например, sed 's/.$//'

#309656
Cruiser78 написал:
[quote=user160]
В gedit я такого не нашёл :(

Например, sed 's/.$//'[/quote]
А полная команда с именем файла (редактируемого скрипта) как будет выгдядеть?

#309657
user160 написал:

А полная команда с именем файла (редактируемого скрипта) как будет выгдядеть?

1.

text
sed -i'.bak' 's/\r//g' FILE

Здесь FILE — имя редактируемого файла, если сохранять копию файла не нужно, то '.bak' из команды нужно удалить.

2.

text
tr -d '\r' < BAD_FILE > FILE

Здесь BAD_FILE — редактируемый файл, FILE — исправленный файл.

#309662
Lupo Alberto написал:
[quote=user160]
А полная команда с именем файла (редактируемого скрипта) как будет выгдядеть?

1.

text
sed -i'.bak' 's/\r//g' FILE

Здесь FILE — имя редактируемого файла, если сохранять копию файла не нужно, то '.bak' из команды нужно удалить.

2.

text
tr -d '\r' < BAD_FILE > FILE

Здесь BAD_FILE — редактируемый файл, FILE — исправленный файл.[/quote]
Спасибо! :) Получилось.

#309664

а dos2unix уже отменили?

#309665
"dyasny⇓" написал:
а dos2unix уже отменили?

В принципе согласен, но... зачем плодить сущности без лишних на то оснований?

#309669
"Lupo Alberto⇓" написал:
В принципе согласен, но... зачем плодить сущности без лишних на то оснований?

утилита уже на месте, то ли в coreutils то ли в чем-то не менее фундаментальном. Скрипты ваять - это лишнее имхо, когда есть готовое решение

#309671
"dyasny⇓" написал:
утилита уже на месте, то ли в coreutils то ли в чем-то не менее фундаментальном.

Может быть, но в Gentoo это отдельный пакет.
P.S. ...и в coreutils нет подобной команды.

#309677
"dyasny⇓" написал:
то ли в coreutils то ли в чем-то не менее фундаментальном

:) лень проверять

#309746
"dyasny" написал:
утилита уже на месте, то ли в coreutils то ли в чем-то не менее фундаментальном.
"Lupo Alberto" написал:
Может быть, но в Gentoo это отдельный пакет.

В Mageia - тоже отдельный пакет, который так и называется dos2unix.
В coreutils, соответственно, dos2unix нет.

Войдите или зарегистрируйтесь, чтобы ответить.