русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Файли та шляхи


Дата додавання: 2014-11-27; переглядів: 1591.


 

В Linux як і в інших операційних системах, треба розрізняти коротке та повне імена файлів. Повне ім”я файлу відображає розташування файлу у файловій системі – абсолютне або відносне. Ім”я файлу (коротке) – це послідовність букв, цифр та деяких розділових знаків. Ця послідовність не повинна містити пробіли або інші символи, що використовуються як розділювачі полів (delimiters). Наприклад назва файлу johns.letter – це коректна назва, а назва johns letter – некоректна, так як містить пробіл. У назвах файлів не дозволяється використовувати деякі службові символи, які мають спеціальне значення для інтерпретатора команд системи:

 

! @ # $ % ^ & * ( ) [ ] { } ' " \ / | ; < >

 

Особливу роль відіграє символ / , який використовують як розділювач у шляхах файлів. Існує можливість використовувати в іменах файлів і „заборонені” символи, але тоді треба брати ім”я файлу у лапки, наприклад

“! Johns Letter” . Але при цьому морже ускладнитися використання цього файлу програмами, а також його використання в інших ОС.

Примітка: у деяких дистрибутивах Linux обмеження на використання спеціальних символів в іменах файлів в значній мірі подолано. Водночас, з метою збереження переносимості програм рекомендується дотримуватися згаданих вище обмежень.і

 

Перші версії UNIX, з яких виводится і Linux, мали обмеження на довжину файлу у 14 символів. В Linux це обмеження знято – імена файлів можуть мати до 256 символів. Деякі з існуючих версій UNIX (наприклад BSD), дозволяють викуористовувати імена довжиною до 64 символів, але тільки перші 14 з них є значущими. Для забезпечення сумісності між операційними системами рекомендується обмежити імена файлів 14 символами.

Повне ім”я (шлях) файлу може мати необмежену кількість символів.

 

В Linux файли не існують самі по собі, вони обов”язково повинні міститися в якомусь каталозі. Найвищий ієрархічний рівень у системі каталогів називається коріневим (root) та позначається знаком /. Якщо файл носит ім”я minny, та розташований у кореневому каталозі, то його абсолютний шлях буде /minny.

 

Файлі користувачів розміщуються в одному з підкаталогів кореневого каталогу з ім”ям Home. Для кожного з користувачів створюють окремий підкаталог з ім”ям користувача. Наприклад, якщо в системі існує користувач minny, то іі файли будуть знаходитися у каталозі /home/minny. Абсолютне ім”я файлу вказує повний шлях до файлу починаючи з кореневого каталогу. Наприклад, таким іменем може бути /home/minny/minnys.file.

 

Поряд з абсолютним іменем існує і відносне ім”я, яке задається відносно біжучого каталогу. Наприклад, якщо користувач minny знаходитьься у своєму долмашньомук каталогу /home/minny, то відносним іменем файлу буде minnys.file. Для того, щоб визначити який каталог є біжучим, можна скористатися командою pwd (print working directory). Визначити біжучий каталог також можна якщо вивести на екран значення змінної оточення $pwd командою echo $pwd

 

При завданні відносного імені файла можна використовувати два знаки, що мають спеціальне значення. Це

. (окрема крапка) – означає біжучий каталог,

.. (дві крапки) – означає батьківський каталог для біжучого

Наприклад, якщо біжучий каталог /home/minny, то каталог з абсолютни ім”ям /minny можна задати таки відносним ім”ям: ../../minny. Знак біжучого каталогу – окрема крапка- буває корисним, наприклад, підчас переміщення файлу. Для того, щоб перенести каталог /copper у біжучий каталог, використовують команду

mv /copper minny

Цю ж операцію можна виконати і інакше:

mv /copper .

де знак . використовується для позначення біжучого каталогу.

 

Більшість команд Linux працюють з повними іменами файлів. Але найчастіше доводиьтся виконувати операції над файлами з біжучого каталогу. При цьому всі відносні імена розглядаються відносно біжучого каталогу.

 

Каталоги є різновидом файлів. Каталогів іменують по тих же правилах, що й файли. На відміну від деяких ОС, в Linux немає поняття логічного диску позначеного літерою. Всі файли, навіть фізично розміщені на різних дисках, логічно подані як складова частина кореневої файлової системи.

 

Визначено чотири головних типів файлів: звичайний файл, каталог, посилання та спеціальний файл. Кожен з тих типів, крім каталогів, має декілька підтипів.

 

Для того, щоб визначити тип файлу, використовуйте команду file. Ця команда дозволяє визначити, чи є файл виконувальним, текстовим, чи містить інші дані. Команда file має такий синтаксис:

 

file [-vczl] [-f namefile] [-m magicfile] filelist

 

Де:

 

Аргумент Опис
Виводить «магічний» файл /usr/lib/magic, що містиь заголовки двійкових файлів для їх коректної ідентифікації. Цей аргумент часто викоритстовують разом з -m для відлагодження нового файлу перед його інсталяцією
-z Аналізує зміст стиснутого файлу, намагаючись визначити його тип
-L Працює з символьними посиланнями
-f namefile Вказує програмі, що список файлів, тип яких потрібно визначити, знаходиться у текстовому файлі namefile. Такий аргумент зручно використовувати, якщо потрібно визначити тип декількох файлів
-m magicfile Задає нестандартний «магічний» файл. За замовчуванням використовують /usr/lib/magic
filelist Список файлів, тип яких потрібно визначити. Назвіи файлів розділені пробілами

 


<== попередня лекція | наступна лекція ==>
Вхід та вихід з системи | Каталоги та фізичні диски


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн