Flip. конвертация файлов между форматами DOS и UNIX/Linux

Добавить в google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru memori.ru moemesto.ru


Flip преобразует окончания строк текстовых файлов между MS-DOS и UNIX/Linux форматами. Автоматически распознает бинарные файлы и не изменяет их, если этого не задано явно. Файлы так же не будут изменены, если они уже в нужном формате. Время создания/изменения файлов не изменяется, если этого не задано явно. Flip коректно обрабатывает прерывание обработки файлов от пользователя и не оставляет за собой мусора или испорченных файлов. Flip не выполняет преобразование файлов в другие кодировки, а так же не умееет обрабатывать окончания строк Apple Macintosh (только CR).

Установка flip в Debian

$ sudo aptitude install flip

Синтаксис Flip

$ flip -h
$ flip -umvtsbz file

Доступные настройки

  • -u преобразовать в *NIX формат (CR LF => LF, одиночный CR или LF остается без изменений, находящийся в конце строки Z удаляется, находящийся внутри строки Z остается без изменений)
  • -m преобразовать в MS-DOS формат (одиночный LF => CR LF, одиночный CR остается без изменений)
  • -h вывести справку
  • -v вывод дополнительной информации, печатать имена обработанный файлов
  • -t изменить временные метки файла
  • -s удалить высший бит
  • -b преобразовывать бинарные файлы (в противном случае финарные файлы остаются без изменений)
  • -z обрезать файл при первом вхождении Z

Примеры использования Flip

Допустим, что file.txt является файлов в кодировке MS-DOS (то есть, имеющим ^Ms в конце каждой строки).

$ # преобразование dos-> unix/linux
$ flip -u file.txt
$ # преобразование unix/linux -> dos
$ flip -m file.txt

Flip поддерживает так называемые wildcards:

$ # преобразование dos-> unix/linux
$ flip -u *
$ # преобразование unix/linux -> dos
$ flip -m *.txt

При вызове Flip необходимо указывать одну из трех опций: -u, -m, -h. Опции можно задавать как отдельно, так и все вместе. Например, все ниже указанные комманды одинаковы:

$ flip -uvt *.c
$ flip -u -v -t *.c
$ flip -u -vt *.c

Особенности Flip

Обработка контрола Z

При выполнении преобразования из MS-DOS формата в UNIX/Linux flip удаляет любой хвостовой контрол Z (последний символ в файле), но оставляет не тронутыми все остальные контролы Z. Таким образом минимизируется вероятность случайного преобразования бинарного файла, содержащего контрол Z недалеко от начала файла. Эту особенность можно отключить с помощью опции -z.

Создание синонимов для вызова Flip

В операционных системах, где программы могут "знать" свои имена, flip может быть переименован (или сделан линк) в файлы: toix для преобразования в UNIX/Linux формат, toms для преобразования в MS-DOS формат. При вызове Flip как toix или toms будет автоматически подставлена одна из опций: -u или -m соответственно.

Альтернативами Flip являются такие комманды как dos2unix,unix2dos.

Вопросы по теме ...

    Вопросов пока не возникало ;)

Есть еще вопрос?