Чтение онлайн

на главную - закладки

Жанры

Руководство по переходу на Ubuntu 10.04 LTS «Lucid Lynx»

Неворотин Вадим

Шрифт:

Рис. 16.1: Аудиофайлы.

Теперь переименуйте любой файл, приписав ему вместо mp3 расширение ??. Видите, тип файла не изменился ( Рис. 16.2 ). Если вы сейчас попробуете открыть такой файл, то он преспокойно откроется как mp3 в проигрывателе [67] .

Рис. 16.2: Тип файла после изменения расширения.

67

Если у вас конечно установлены кодеки для воспроизведения mp3. В противном случае система сначала предложит вам их установить, но после установки всё же проиграет

ваш файл.

Конечно расширение нужно, мало того, Ubuntu полагается в первую очередь именно на него, то есть если вы переименуете mp3 файл, добавив к нему расширение txt, то Ubuntu будет считать такой файл текстовым. Однако то, что Ubuntu умеет смотреть не только на имя файла, спасает от многих проблем. Поэтому не удивляйтесь, когда встретите в Ubuntu файлы вообще без расширения, с которыми система преспокойно работает, ничего при этом не спрашивая.

Кстати, в Ubuntu есть мощная утилита определения типа файла, которая вообще не смотрит на имя и расширение, а пытается идентифицировать файл только по содержимому. Она бывает полезна, когда файл по каким-либо причинам не открывается, поскольку позволяет убедиться, что в нём содержаться данные именно того типа, которого вы и ожидаете там увидеть. Утилита эта консольная и называется file. Вот что она говорит о переименованном в текстовый документ аудио в формате mp3:

Рис. 16.3: Результат выполнения file для файла с расширением txt.

Обмануть утилиту file практически невозможно, а знает она о большинстве используемых форматов файлов.

16.4 Исполняемые файлы

В вопросах исполняемых файлов, то есть, если по простому, обычных программ, Ubuntu кардинально отличается от Windows. В Windows исполняемые файлы имеют расширение exe (в основном), а внутри представляют из себя нечитаемый набор байтов. А в Ubuntu исполняемым может быть даже текстовый файл. Сразу скажу, что exe — это программы для Windows и в Ubuntu они не работают без Wine (приложения для запуска исполняемых файлов Windows в Linux), но вообще говоря и в Wine они работают далеко не всегда.

Итак, что же такое исполняемый файл с точки зрения Ubuntu? Фактически это любой файл, который помечен, как исполняемый и который Ubuntu сможет запустить на выполнение. Означает это вот что: у каждого файла есть специальное свойство-переключатель, никак не зависящее ни от имени, ни от содержимого, отвечающее за исполняемость. Если файл помечен, как исполняемый, то вообще говоря он таковым и является, а если не помечен — то это обычный файл с данными и напрямую запустить его на выполнение нельзя. Другое дело, что не любой файл, помеченный как исполняемый, Ubuntu сможет выполнить, хотя в арсенале Ubuntu есть масса методов запуска файлов с совершенно различным содержимым.

Характерным примером необычных с первого взгляда исполняемых файлов Linux являются так называемые скрипты. Скрипты — это обычные текстовые файлы, содержащие набор инструкций для программы-интерпретатора, которая занимается собственно выполнением скриптов. Так вот, если на скрипте установлено свойство исполняемости, то это программа, которую можно запустить обычным образом, а если не установлено — то это всего лишь текстовый файл. То есть сделать файл исполняемым или же наоборот, убрать возможность его выполнения, можно изменением всего одного его свойства.

Мало того, на самом деле это магическое свойство-переключатель исполняемости является одним из трёх прав доступа, о которых я мельком упоминал в предыдущей главе. Я говорил, что у каждого файла есть три группы прав доступа — для пользователя-владельца, для группы-владельца и для всех остальных, каждая группа состоит в свою очередь из трёх прав: на чтение, модифицирование и выполнение. Так вот, право на выполнение и является тем самым волшебным переключателем исполняемости.

Из этого вытекает весьма забавное свойство: один и тот же файл может быть одновременно и исполняемым, и не исполняемым, допустим, если на его выполнение есть права только у пользователя-владельца. Тогда пользователь, которому принадлежит этот файл, сможет его запустить как программу, а для всех остальных он будет обычным файлом с данными.

Вот так всё на самом деле просто и красиво, надеюсь, вы осознали основную логику и не будете путаться при работе с исполняемыми файлами в Ubuntu.

16.5 Текстовые файлы

Текстовые файлы в Ubuntu повсюду. Все настройки хранятся в виде текстовых файлов, исходные коды всех программ представляют из себя текстовые файлы, многие программы в Ubuntu являются на самом деле скриптами, то есть тоже текстовыми файлами. И естественно Ubuntu умеет работать с текстовыми файлами как угодно. И этой темы даже не пришлось бы касаться, если бы не одна проблема операционных систем Windows. Дело в том, что в Windows до сих пор кое-где ещё используется устаревший в 90-х прошлого столетия способ сохранения обычного текста, в частности, в текстовых файлах [68] .

68

Проблема

вот в чём: технически в памяти компьютера хранятся биты, объединённые в байты, то есть наборы ноликов и единичек. Такие наборы представляют из себя числа в двоичной системе счисления. То есть компьютер умеет хранить только обычные числа. Для того, чтобы сохранять текст и иметь возможность потом его прочитать, необходима специальная таблица преобразования, в которой каждому символу соответствует свой номер. Такая таблица называется кодировкой. Исторически сложилось так, что на первых компьютерах из-за экономии памяти одному символу соответствовал один байт, соответственно, в кодировке могло быть всего 256 символов (т. к. в одном байте можно записать числа от 0 до 255). Естественно, 256 символов не хватит даже для записи некоторых национальных алфавитов, не говоря уже про все алфавиты мира. Поэтому для каждого национального алфавита была разработана своя кодировка (а иногда и не одна). Для русского языка три самые частоиспользуемые кодировки такого вида это стандартная cp1251 для Windows, KOI8R и старая cp866 для DOS. И всё бы хорошо, но по набору байтов, который должен представлять из себя текст, невозможно определить, в какой из национальных кодировок он представлен. Это создаёт гигантские проблемы при попытке общения людей из разных национальностей и делает практически невозможной интернационализацию текстовых документов. Поэтому была разработана универсальная кодировка, названная Unicode (Юникод), которая содержит абсолютно все печатные символы Земли. Технически она реализована в нескольких вариантах, самым распространённым из которых является utf-8. Это кодировка имеет обратную совместимость с ASCII, старым международным 128-символьным стандартом, содержащим только английские буквы, арабские цифры и знаки препинания, поэтому документы только с ASCII символами прекрасно открываются как utf-8. Ubuntu везде и всегда естественно использует utf-8, это позволяет, в частности, использовать любые символы в именах файлов да и вообще что угодно называть как угодно. А вот некоторые программы для Windows, к сожалению, до сих пор не вылезли из анабиоза и зачастую используют национальные кодировки для сохранения текста. В случае русскоязычной версии Windows такой кодировкой является cp1251. Проблемы начинаются, когда документы из Windows приходится открывать в Ubuntu. Как я уже сказал, определить по набору байт, в какой из сотен кодировок он представлен, невозможно. Поэтому по умолчанию Ubuntu полагает, что весь текст представлен в стандартной международной кодировке, то есть в utf-8. И если вы откроете в Ubuntu текстовый файл с русскими символами, созданный в Windows, то вполне можете увидеть непонятные символы.

На самом деле большинство файлов откроется в стандартном текстовом редакторе Ubuntu без проблем [69] , но всё же иногда попадаются файлы, которые отображаются «кракозябрами». В этом случае необходимо немного помочь Gedit и указать кодировку файла вручную. Для этого закройте в редакторе вкладку с нечитаемым файлом, затем выберите в меню программы пункт «Открыть», найдите свой файл и обратите внимание на поле «Кодировка символов», находящееся внизу диалогового окна открытия. В этом поле необходимо указать нужную кодировку, после чего файл откроется уже в пригодном для чтения виде. Кстати, рекомендую такие файлы сразу сохранять в utf-8, дабы в дальнейшем не возникало с ними проблем.

69

Поскольку по умолчанию в русскоязычной версии Ubuntu Gedit настроен таким образом, что он пытается автоматически подобрать одну из распространённых русскоязычных кодировок к файлу. Конечно, если в файле не русский текст, и сохранён такой файл в одной из устаревших кодировок, то Ubuntu автоматически открыть его не сможет.

Существуют и более лёгкие способы работы с кодировками, например, плагин для Gedit, позволяющий менять кодировку у открытых файлов без необходимости их переоткрывания. Кроме того, существуют утилиты для автоматического перекодирования файлов в utf-8, например, enca. Можно также управлять механизмом автоопределения кодировки в Gedit, это делается через редактор конфигурации, про который я немного расскажу в одной из последних глав.

Напоследок хочется сказать, что очень рекомендуется так или иначе перевести всю текстовую информацию на использование utf-8, поскольку фактически только эта кодировка нормально распознаётся везде и всегда, а в будущем скорее всего только она и будет использоваться.

16.6 Аудиофайлы

В случае с аудиофайлами также существует проблема с кодировками, только проявляется она в тегах. К сожалению, некоторые популярные Windows-программы редактирования тегов как и текстовые редакторы до сих пор используют устаревшую кодировку. Некоторые плееры Ubuntu поддерживают указание кодировки воспроизводимых файлов, однако гораздо предпочтительней обработать всю вашу медиатеку специальными программами, которые автоматически приведут все теги в нормальный вид, дабы в дальнейшем не было проблем. Самой популярной программой такого рода является EasyTag, она доступна в стандартных репозиториях, так что почти сразу после прочтения следующей главы вы сможете ей воспользоваться.

Поделиться:
Популярные книги

Кровь на эполетах

Дроздов Анатолий Федорович
3. Штуцер и тесак
Фантастика:
альтернативная история
7.60
рейтинг книги
Кровь на эполетах

Студиозус 2

Шмаков Алексей Семенович
4. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
5.00
рейтинг книги
Студиозус 2

Темный Патриарх Светлого Рода

Лисицин Евгений
1. Темный Патриарх Светлого Рода
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Темный Патриарх Светлого Рода

Изгой Проклятого Клана. Том 2

Пламенев Владимир
2. Изгой
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Изгой Проклятого Клана. Том 2

Приручитель женщин-монстров. Том 6

Дорничев Дмитрий
6. Покемоны? Какие покемоны?
Фантастика:
юмористическое фэнтези
аниме
5.00
рейтинг книги
Приручитель женщин-монстров. Том 6

Бестужев. Служба Государевой Безопасности

Измайлов Сергей
1. Граф Бестужев
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Бестужев. Служба Государевой Безопасности

На границе империй. Том 10. Часть 2

INDIGO
Вселенная EVE Online
Фантастика:
космическая фантастика
5.00
рейтинг книги
На границе империй. Том 10. Часть 2

70 Рублей

Кожевников Павел
1. 70 Рублей
Фантастика:
фэнтези
боевая фантастика
попаданцы
постапокалипсис
6.00
рейтинг книги
70 Рублей

Ученик. Книга третья

Первухин Андрей Евгеньевич
3. Ученик
Фантастика:
фэнтези
7.64
рейтинг книги
Ученик. Книга третья

Гардемарин Ее Величества. Инкарнация

Уленгов Юрий
1. Гардемарин ее величества
Фантастика:
городское фэнтези
попаданцы
альтернативная история
аниме
фантастика: прочее
5.00
рейтинг книги
Гардемарин Ее Величества. Инкарнация

Метатель

Тарасов Ник
1. Метатель
Фантастика:
боевая фантастика
попаданцы
рпг
фэнтези
фантастика: прочее
постапокалипсис
5.00
рейтинг книги
Метатель

Один на миллион. Трилогия

Земляной Андрей Борисович
Один на миллион
Фантастика:
боевая фантастика
8.95
рейтинг книги
Один на миллион. Трилогия

Завод: назад в СССР

Гуров Валерий Александрович
1. Завод
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Завод: назад в СССР

Треск штанов

Ланцов Михаил Алексеевич
6. Сын Петра
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Треск штанов