Краткий справочник по работе с командной строкой Unix
Самая главная команда
man
Файловая система
Копирование файлов и каталогов
Синтаксис команды:
$ cp [options] source destination
Опции:
- -p
- Сохраняет время модификации файла и максимально возможные полномочия. Без этой опции для нового файла задаются полномочия, соответствующие полномочиям запустившего команду пользователя
- -r
- Если source — каталог, то копируется как он, так и все входящие в него подкаталоги, т. е. сохраняется исходная форма дерева каталогов
- -d
- Если задать эту опцию, то символические ссылки будут оставаться ссылками (а иначе вместо ссылки копируется файл, на который дается ссылка)
- -f
- Перезаписывать файлы при копировании (если такие уже есть) без дополнительных предупреждений
- -i
- Всегда выводить предупреждение перед перезаписью существующего файла
Навигация в каталогах
- /
- корневой каталог сервера
- ~
- домашний каталог пользователя от имени которого происходит работа (зависит от настроек системы)
- ..
- на уровень выше текущего каталога
- ls
- листинг файлов и каталогов
Удаление каталога
rm -r имя_каталога
где
-r - рекурсивное удаление всех вложенных каталогов и файлов
Архивация каталогов
tar -czf ~/tmp/archive.tar.gz .
где
с - создание нового архива
z - после создания архива запаковать его в gzip
f - указать имя файла, куда будет производиться архивирование (по умолчанию, архивирует в некое архивное устройство, в зависимости от установок системы)
~/tmp/ - путь к выходному файлу
archive.tar.gz - название файла архива
. архивировать каталог, в котором запускается команда
Извлечение каталогов из архива
tar xzf archive.tar.gz -
где
x - выполнить извлечение файлов из архива
z - архив запакован gzip
f - брать архив из файла, а не из устройства по умолчанию
- - распаковывать в текущий каталог
Скачивание файла с другого сервера по HTTP
wget URL
где URL - путь к файлу загрузки. Текущей должна быть директория в которую загружаем.
Перекачивание файловой структуры по FTP
wget -r -nH -nc --cut-dirs=4 ftp://login:password@ftphost.com/1/2/3/4/*
-r - рекурсивный обход подкаталогов
-nH - игнорировать адрес host'a
-nc - пропустить уже закаченные файлы
--cut-dirs - число игнорируемых директорий,
Файлы скачиваются в текущий каталог.
Пример. Допустим текущий каталог /tmp. Если выполнить команду:
wget -r -nH --cut-dirs=2 ftp://ftphost/1/2/3/4/*
файлы загрузятся в директорию /tmp/3/4/
Если выполнить команду:
wget -r -nH --cut-dirs=3 ftp://ftphost/1/2/3/4/*
файлы загрузятся в директорию /tmp/4/
База MySQL
Создание дампа
mysqldump -u имя_пользователя -p имя_базы -h имя_сервера_БД > dump.sql
После ввода команды будет запрошен пароль указанного пользователя.
Дамп будет сохранён в текущем каталоге.
Восстановление данных
mysql -u имя_пользователя -p имя базы -h имя_сервера_БД < dump.sql
После ввода команды будет запрошен пароль указанного пользователя.
Дамп должен находится в каталоге, из которого производится запуск команды
Создание и архивация дампа БД
mysqldump -u имя_пользователя -p имя_базы -h имя_сервера_БД | gzip -c > db_dump.gz
Распаковка и восстановление данных из архива БД
gzip -cd db_dump.gz | mysql -u имя_пользователя -p имя_базы -h имя_сервера_БД