Каждому пользователю системы UNIX выделяется домашний каталог – каталог, в котором пользователь располагает файлы, с которыми работает. Обычно пользователь имеет полные права на все файлы и каталоги, расположенные в его домашнем каталоге. Как правило, рядовые пользователи имеют права на запись только в своем домашнем каталоге (а также в каталоге временных файлов - /tmp, /var/tmp).
Имя домашнего каталога обычно совпадает с регистрационным именем пользователя. Кроме того, к своему домашнему каталогу пользователь может обращаться по сокращенному обозначению «~» (символ «тильда»):
cd ~
cat ~/mywork/prog1.c
При входе систему текущим для данного пользователя становится его домашний каталог.
Команды управления файлами подчиняются общим принципам построения команд в UNIX. Команда вводится в командной строке, состоит из одного или более слов, разделенных пробелами. Первое слово задает собственно команду, остальные (если они присутствуют) являются параметрами команды. Параметрами команд, в частности, могут быть имена файлов. Особым типом параметров являются ключи – алфавитные символы, задающие или корректирующие действие команды. Ввод команды завершается нажатием Enter. Как и в именах файлов, в написании команд различаются заглавные и строчные буквы.
При указании имен файлов в качестве параметров допускается использовать шаблоны (маски) имен, позволяющие одной командой обратиться более чем к одному файлу. В шаблонах (масках) могут указываться следующие специальные символы:
* |
Означает любую последовательность символов, включая пустую |
? |
Означает любой одиночный символ |
[…] |
Означает любой из символов, заключенных в скобки; пара символов, разделенных знаком «-», сокращенно задает интервал символов. |
Примеры шаблонов:
Пример шаблона |
Значение |
Соответ-ствует |
Не соответ-ствует |
*.с |
Все файлы, имена которых заканчиваются на «.с» |
test1.c a.c |
test1.C a.c.bak |
a?c |
Все файлы, имя которых начинается с «а», затем идет любой символ, затем окончание «с» |
abc a1c a.c |
abbc ac |
test[0-9] |
Все файлы, имя которых состоит из слова «test» и одной цифры |
test0 test5 test9 |
test testa test1.c |
[ab]* |
Все файлы, имена которых начинаются на символ «а» или «b» |
alpha b52e b |
Alpha test |
К основным командам управления файлами относятся команды перемещения по файловой системе, создания и удаления каталогов, копирования, переименования и перемещения файлов, управления атрибутами файлов и т.п.
ls [-ключи] [имя]
Команда просмотра содержимого каталога (списка файлов). При запуске без параметров выдает полный список имен файлов и подкаталогов текущего каталога (кроме скрытых файлов, имя которых начинается с символа «точка»); при этом имена файлов и каталогов визуально не различаются. Если в качестве параметра «имя» указано имя каталога, выдается содержимое заданного каталога. Параметр «имя» может задавать шаблон (маску) имен файлов; в этом случае будут выведены имена файлов, соответствующие этой маске. Наиболее употребительные ключи команды ls: -pпозволяет выделить из общего списка имена каталогов (символом «/», приписанным к имени); -a означает вывод весх файлов, включая скрытые (имя начинается с символа «точка»), -l включает выдачу полной информации о каждом файле (тип, права, число жестких ссылок, владелец, группа-владелец, размер в байтах, дата и время модификации). Пример выводимой информации:
-rw-r--r-- 1 john users 36482 Dec 22 19:30 report.txt
-rwxr-xr-- 2 root root 7214 Jan 17 11:26 adduser
Ключи могут комбинироваться (напр., ls –lp, ls –lap).
ls – получить список файлов и подкаталогов для текущего каталога;
ls –l /usr/sbin – получить подробную информацию о содержимом каталога /usr/sbin;
ls –l *.c – получить сведения о файлах текущего каталога, имена которых заканчиваются на «.с».
pwd
Выдает полное имя текущего каталога.
cd <каталог>
Производит смену текущего каталога на указанный каталог (переход в указанный каталог).
cd /usr/sbin – перейти в каталог /usr/sbin;
cd .. – перейти в каталог, родительский по отношению к текущему (перейти на один уровень выше по дереву файловой системы);
cd text – перейти в каталог text (подразумевается, что каталог text расположен в текущем каталоге).
cd ~ - перейти в свой домашний каталог.
mkdir <имя_каталога>
Создание каталога с указанным именем.
mkdir test
mkdir /home/john/programs
mkdir ../work
rmdir <имя_каталога>
Удаление указанного каталога.
cp <файл(ы)> <куда>
Копирование указанного файла (или группы файлов, заданных шаблоном имени). Если в качестве второго параметра указано имя каталога, команда скопирует файл(ы) в этот каталог. Если вторым параметром указано имя файла (несуществующего на момент выполнения команды), указанный файл будет скопирован с заданным именем.
cp test1.c test1.bak – копирование указанного файла;
cp *.c /home/john/backup – копирование всех файлов, имена которых заканчиваются на «.с», в указанный каталог;
cp text ~ - скопировать файл «text» в домашний каталог.
mv <файл(ы)> <куда>
Переименование или перемещение файлов. Смысл параметров аналогичен команде ср.
rm <файл(ы)>
Удаление указанного файла или группы файлов, заданных шаблоном имени.
rm test.bak – удаление файла test.bak;
rm * - очистка текущего каталога (удаление всех файлов)
chown <пользователь> <файл(ы)>
Изменить владельца указанного файла (или группы файлов) на пользователя, имя которого задано первым аргументом. Во многих реализациях UNIX команду chown может выполнять только суперпользователь root (администратор системы).
chown john *.txt – сделать пользователя john владельцем всех текстовых файлов текущего каталога.
Изменить права доступа для указанных файлов. В качестве параметров команда принимает указание классов доступа (‘u’ – для владельца, ‘g’ – для группы-владельца, ‘o’ – для остальных пользователей, ‘a’ – для всех классов пользователей), операцию по изменению прав («+» - добавить права, «-» - удалить права, «=» - присвоить) и права доступа («r» - чтение, «w» - запись, «x» - исполнение для файлов, просмотр содержимого для каталогов).
chmod u+x prog1 – добавить владельцу право на исполнение программного файла prog1;
chmod a-w file1.dat – снять права на запись для всех пользователей (сделать файл доступным только для чтения).
chmod g=rwx test – задать полные права на файл test для пользователей, принадлежащих к группе-владельцу.
Для упрощения работы пользователей в консольном режиме разработаны визуальные программы-оболочки. Наиболее распространенной из них является свободно распространяемая программа Midnight Commander (mc). В случае, если стандартная поставка OC не содержит данного пакета, имеет смысл загрузить его из Internet и установить. Программа Midnight Commander (mc) доступна через многие узлы FTP, где представлена как в виде исходного кода (универсального, но требующего компиляции), так и в виде готовых пакетов («двоичных») для конкретных версий UNIX.
Визуальное представление файловой системы и принципы работы пользователя в Midnight Commander в целом совпадают с известной оболочкой Norton Commander для DOS. Экран разделен на два окна (панели), каждое из окон отображает некоторый каталог; один из отображаемых каталогов – текущий. Специальные типы файлов в панелях помечаются символом слева от имени: «/» - каталог, «~» - символическая ссылка, «*» - исполняемый файл и т.п.
Запуск оболочки выполняется командой
mc
Основные операции выполняются в основном функциональными клавишами, значение которых аналогично используемому в Norton Commander.
F1 – справка (помощь);
F2 – вызов пользовательского меню;
F3 – просмотр файла;
F4 – редактирование файла;
F5 – копирование;
F6 – перемещение или переименование;
F7 – создание каталога;
F8 – удаление файла или каталога;
F9 – вызов системного меню;
F10 – выход из mc.
Особенности внешнего вида панелей, а также работы с функциональными клавишами, могут зависеть от версии mc, его настроек, а также особенностей применяемого терминала. В частности, ряд эмуляторов терминала требует вместо нажатия функциональных клавиш (F1, F2 … F10) использовать последовательности Esc 1, Esc 2 … Esc 0.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.