– переход из текущего каталога в каталог cc, находящийся в каталоге prog;
cd ../gosha/bin
– возврат на шаг назад и переход в каталог bin пользователя gosha;
cd
– переход в свой домашний каталог.
Специальные имена каталогов:
. (точка) – текущий каталог;
.. (две точки) – родительский каталог по отношению к текущему.
В bash или zsh можно использовать спецсимволы, которые shell преобразует в имена каталогов:
~
(тильда) – домашний каталог;
~name
–
домашний каталог пользователя name;
– (тире) – возврат в предыдущий каталог (опция встроенной команды cd).
Команды для работы с каталогами
mkdir [опции] имя_каталога …
– создать новые каталоги.
Опции:
– m mode
– задать права доступа;
– p
– создавать при необходимости родительские каталоги.
rmdir имя_каталога …
– удалить каталоги (каталоги должны быть пустыми).
ls [опции/имена]
– выводит содержимое каталога или атрибутов файлов.
имена
– это имена каталогов или файлов. Если имена не указаны, то выводится содержание текущего каталога.
Наиболее часто используются опции:
– a
– вывести все файлы (даже если имена начинаются с точки);
– l
– вывести подробную информацию о файлах и папках (права доступа, имя владельца и группы, размер в блоках по 512 байт, время последней модификации, имя файла или каталога);
– t
– имена файлов сортируются не по алфавиту, а по времени последнего изменения;
– R
– рекурсивно пройти по всем подкаталогам, выводя по ним информацию.
Команды для работы с файлами
touch [опции] имя_файла
– создать файл, если он не существовал, или изменить время последнего изменения файла.
rm [опции] имя_файла … —
удаление файлов
опции
– i
– интерактивное удаление (с требованием подтверждения);
– f
– без выдачи сообщений;
– r
– рекурсивное удаление каталогов вместе с содержимым.
Примеры:
Для задания списка файлов можно использовать шаблоны, но пользоваться ими следует крайне осторожно. Команда
rm test*
удалит все файлы с именами, начинающимися на
test
;
rm test *
(после test стоит пробел) удалит вообще все файлы в каталоге (кроме начинающихся на точку).
mv [опции] источник назначение
– перемещение файлов и каталогов.
Опции:
– i
– интерактивное перемещение (с требованием подтверждения);
– f
– без выдачи сообщений.
Команда mv выполняет множество функций в зависимости от типа аргументов.
1) Переименовывает файлы и каталоги, если оба аргумента являются либо файлами, либо каталогами:
mv file1 file2
– в рабочем каталоге файл
file1
получит имя
file2
;
mv dir1 dir2
– если
dir2
не существовал в рабочем каталоге, то каталог
dir1
получит
имя
dir2
; если
dir2
существовал, то каталог
dir1
будет перемещён в него.
2) Перемещает файл или каталог в другой каталог с тем же именем или другим:
mv file1 dir2
– перемещает
file1
из рабочего каталога в каталог
dir2
с тем же именем;
mv file1 dir2/file2
– перемещает
file1
из рабочего каталога в каталог
dir2
с именем
file2.
Если источником является список файлов, а назначением – каталог, то можно использовать шаблоны:
mv file* ../dir2
– перемещает все файлы, имена которых начинаются со строки
file
, в каталог одного уровня с рабочим.
Во всех операциях объекты, выступающие в качестве источника, исчезают: меняют имя или расположение.
cp [опции] источник назначение
– копирование файлов и каталогов.
Опции:
– i
– интерактивное копирование (с требованием подтверждения, если объект назначение уже существует );
– f
– без выдачи сообщений;
– r
– рекурсивное копирование каталогов вместе с содержимым;
– p
– копирование с сохранением атрибутов файлов (прав доступа, времени модификации).
Примеры:
cp file1 file2
– будет создана копия файла
file1
в файле с именем
file2
;
cp file1 dir2
– будет создана копия файла
file1
в каталоге
dir2
(т. е. с именем
dir2/file1
);
cp -r dir1 dir2
– будет создана копия каталога
dir1
в каталоге
dir2
;
cp file1 file2 file3 /tmp
– копирует файлы с именами
file1
,
file2
,
file3
в подкаталог
tmp
корневого каталога. Это можно выполнить командой:
Команда
cat
объединяет файлы и выдаёт их на стандартный поток вывода. Если аргумент файл отсутствует, то команда
cat
будет принимать входной поток из стандартного файла ввода (клавиатуры). Поскольку команда работает со стандартным файлом вывода (терминалом), то чаще всего она используется для просмотра на экране содержимого файла. Не рекомендуется выдавать на экран бинарные файлы.
cat ls.txt
– выводит содержимое файла с именем
ls.txt
на терминал;
cat ls1.txt ls2.txt ls3.txt
– по очереди выводит на терминал содержимое файлов
ls1.txt, ls2.txt, ls3.txt
;
cat ls1.txt ls2.txt ls3.txt > lsall.txt
– объединяет три файла в один. При этом старые файлы сохраняются. Если файл
lsall.txt
уже существовал, то он затрётся новым содержимым. Можно дописать в конец файла, если использовать для перенаправления знак