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

на главную

Жанры

Командная строка Linux
Шрифт:

[me@linuxbox ~]$ stat playground/timestamp

File: `playground/timestamp'

Size: 0 Blocks: 0 IO Block: 4096 regular empty file

Device: 803h/2051d Inode: 14265061 Links: 1

Access: (0644/-rw-r--r--) Uid: ( 1001/ me) Gid: ( 1001/ me)

Access: 2012-10-08 15:15:39.000000000 -0400

Modify: 2012-10-08 15:15:39.000000000 -0400

Change: 2012-10-08 15:15:39.000000000 -0400

Если применить команду touch к файлу еще раз и затем исследовать его с помощью stat, мы увидим, что время последнего его изменения обновилось:

[me@linuxbox ~]$ touch playground/timestamp

[me@linuxbox ~]$ stat playground/timestamp

File: `playground/timestamp'

Size: 0 Blocks: 0 IO Block: 4096 regular empty file

Device: 803h/2051d Inode: 14265061 Links: 1

Access: (0644/-rw-r--r--) Uid: ( 1001/ me) Gid: ( 1001/ me)

Access: 2012-10-08 15:23:33.000000000 -0400

Modify: 2012-10-08 15:23:33.000000000 -0400

Change: 2012-10-08 15:23:33.000000000 -0400

Далее

воспользуемся командой find, чтобы обновить время последнего изменения некоторых файлов в нашей песочнице:

[me@linuxbox ~]$ find playground -type f -name 'file-B' -exec touch '{}' ';'

Эта команда обновит время последнего изменения для всех файлов с именем file-B, имеющихся в песочнице. Теперь найдем с помощью find обновленные файлы, сравнив все файлы с эталонным файлом timestamp:

[me@linuxbox ~]$ find playground -type f -newer playground/timestamp

В результате мы получим все 100 файлов с именем file-B. Поскольку команда touch применялась ко всем файлм file– B в песочнице после обновления файла timestamp, они оказались «новее», чем timestamp, и потому были идентифицированы проверкой -newer.

В заключение вернемся к проверке плохих разрешений, выполнявшейся выше, и применим ее к каталогу playground:

[me@linuxbox ~]$ find playground \( -type f -not -perm 0600 \) -or \( -type d -not -perm 0700 \)

199

Эта команда выведет все 100 каталогов и 2600 файлов, хранящихся в playground (а также файл timestamp и сам каталог playground, всего 2702 элемента), потому что ни один из них не соответствует нашему определению «удовлетворительные разрешения». Вооружившись новыми знаниями об операторах и операциях, добавим в эту команду операции для применения новых разрешений к файлам и каталогам в песочнице:

[me@linuxbox ~]$ find playground \( -type f -not -perm 0600 -exec chmod 0600

'{}' ';' \) -or \( -type d -not -perm 0700 -exec chmod 0700 '{}' ';' \)

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

Параметры

Наконец

мы добрались до параметров. Параметры помогают управлять областью поиска. Они могут включаться в выражения команды find наряду с другими проверками и операциями. В табл. 17.8 перечислены наиболее часто используемые параметры.

Таблица 17.8. Параметры команды find

Параметр

Описание

– depth

Требует от find обработать сначала файлы в каталогах и только потом каталоги. Этот параметр автоматически применяется с операцией -delete

– maxdepth число_уровней

Устанавливает максимальное число уровней, на которое команда find может опускаться в дереве каталогов, выполняя проверки и операции

– mindepth число_уровней

Устанавливает минимальное число уровней, на которое команда find должна опуститься в дереве каталогов перед выполнением проверок и операций

– mount

Требует от find не выполнять обход каталогов, в которые смонтированы другие файловые системы

– noleaf

Требует от find не оптимизировать поиск, опираясь на предположение, что поиск ведется в Unix-подобной файловой системе. Этот параметр необходимо использовать при обходе файловых систем DOS/Windows CD-ROM

18. Архивация и резервное копирование

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

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

Программы сжатия:

• gzip — сжимает и распаковывает файлы.

• bzip2 — программа поблочного сжатия файлов.

Программы архивирования:

• tar — утилита архивирования на ленту.

• zip — упаковывает и сжимает файлы.

И программа синхронизации файлов:

• rsync — выполняет синхронизацию файлов и каталогов с удаленной системой.

Сжатие файлов

На протяжении всей истории развития вычислительных технологий не прекращались попытки размещения большего числа данных в меньшем объеме, будь то память, устройства хранения или полоса пропускания сети. Многие устройства и технологии, прочно вошедшие в обиход, такие как переносные плееры, телевидение высокой четкости или широкополосный доступ в Интернет, обязаны своим существованием эффективным технологиям сжатия данных.

Сжатие данных — это процесс устранения избыточных данных. Давайте рассмот­рим воображаемый пример. Допустим, у нас есть файл, хранящий изображение абсолютно черного квадрата размером 100 на 100 пикселей. В терминах хранения данных (если предположить, что каждый пиксель представлен 24 битами, или 3 байтами) изображение занимает 30 000 байт: 100 х 100 х 3 = 30 000.

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

Хозяйка дома на холме

Скор Элен
1. Хозяйка своей судьбы
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Хозяйка дома на холме

Удобная жена

Волкова Виктория Борисовна
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Удобная жена

Первый пользователь. Книга 3

Сластин Артем
3. Первый пользователь
Фантастика:
боевая фантастика
рпг
5.00
рейтинг книги
Первый пользователь. Книга 3

Усадьба леди Анны

Ром Полина
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Усадьба леди Анны

Возвышение Меркурия. Книга 5

Кронос Александр
5. Меркурий
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Возвышение Меркурия. Книга 5

Любовь Носорога

Зайцева Мария
Любовные романы:
современные любовные романы
9.11
рейтинг книги
Любовь Носорога

Идеальный мир для Лекаря 18

Сапфир Олег
18. Лекарь
Фантастика:
юмористическое фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 18

СД. Том 17

Клеванский Кирилл Сергеевич
17. Сердце дракона
Фантастика:
боевая фантастика
6.70
рейтинг книги
СД. Том 17

Сердце Дракона. Двадцатый том. Часть 2

Клеванский Кирилл Сергеевич
Сердце дракона
Фантастика:
фэнтези
5.00
рейтинг книги
Сердце Дракона. Двадцатый том. Часть 2

Жена по ошибке

Ардова Алиса
Любовные романы:
любовно-фантастические романы
7.71
рейтинг книги
Жена по ошибке

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

INDIGO
9. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.40
рейтинг книги
На границе империй. Том 7. Часть 3

(Не)нужная жена дракона

Углицкая Алина
5. Хроники Драконьей империи
Любовные романы:
любовно-фантастические романы
6.89
рейтинг книги
(Не)нужная жена дракона

Попаданка в деле, или Ваш любимый доктор

Марей Соня
1. Попаданка в деле, или Ваш любимый доктор
Фантастика:
фэнтези
5.50
рейтинг книги
Попаданка в деле, или Ваш любимый доктор

Наследник Четырех

Вяч Павел
5. Игра топа
Фантастика:
героическая фантастика
рпг
6.75
рейтинг книги
Наследник Четырех