Библиотека сайта rus-linux.net
Цилюрик О.И. Linux-инструменты для Windows-программистов | ||
Назад | Консольные команды | Вперед |
Основные операции
Основные операции над объектами файловой системы...
Создание каталога:
$ mkdir newdir $ cd newdir
Создание нового (пустого) файла:
$ touch cmd.txt
Копирование файла, или целога каталога файлов (во 2-м случае ключ
рекурсивности -R
обязателен):
$ cp ../f1.txt cmd.txt $ cp -R /etc ~ cp: невозможно открыть `/etc/at.deny' для чтения: Отказано в доступе cp: невозможно открыть `/etc/shadow-' для чтения: Отказано в доступе cp: невозможно открыть `/etc/gshadow-' для чтения: Отказано в доступе ...
Подсчитать суммарный объём, занимаемый всеми файлами в указанном каталоге:
$ du -hs ~/etc 89M /home/olej/etc
Удалить каталог:
$ rmdir ~/etc rmdir: /home/olej/etc: Каталог не пуст
Команда завершается ошибкой, так как в каталоге имеются файлы. Но команда рекурсивного удаления файлов справится с той же задачей:
$ rm -R ~/etc rm: удалить защищенный от записи обычный файл `/home/olej/etc/sudoers'? Y ... $ rm -Rf ~/etc $ ls ~/etc ls: /home/olej/etc: Нет такого файла или каталога
Перемещение или переименование файла (или целой иерархии файлов — каталога). Если перемещение происходит в пределах одного каталога, то это переименование (1-я команда), иначе — реальное перемещение (2-я команда):
$ mv cmd.txt list.txt $ mv list.txt ../cmd.txt
Побайтовое сравнение файлов по содержимому:
$ cmp -s huck.tgz huck1.tgz $ echo $? 0
Для сравнения текстовых файлов (файлов программного
кода) с выделением различий для последующего применения команды patch
,
используется другая команда. Ниже показан короткий законченный пример
создания такой заплатки, и последующего его наложения на файл —
этого достаточно для понимания основ принципа:
$ diff --help Использование: diff [КЛЮЧ]... ФАЙЛЫ Построчно сравнивает два файла. ... $ echo 1234 > f4 $ echo 12345 > f5 $ diff f4 f5 1c1 < 1234 --- > 12345 $ diff f4 f5 > 45.patch $ patch -i 45.patch f4 patching file f4 $ cmp f4 f5 $ echo $? 0 $ ls -l итого 12 -rw-rw-r-- 1 olej olej 23 Апр 14 07:12 45.patch -rw-rw-r-- 1 olej olej 6 Апр 14 07:13 f4 -rw-rw-r-- 1 olej olej 6 Апр 14 07:10 f5
Команды с потоками и конвейерами:
$ cat url.txt >> cmd.txt $ echo 111 > newfile $ echo $? 0 $ ls -l newf* -rw-rw-r-- 1 olej olej 4 Мар 19 15:17 newfile $ pwd /home/olej/TMP $ ls $ echo 12345 | tee 1 2 3 4 > 5 $ ls 1 2 3 4 5
Некоторые служебные операции над файловой системой:
- сбросить буфера файловой системы на диск:
$ sync
- проверка (и восстановление) структуры файловой системы на носителе:
# fsck -c fsck 1.39 (29-May-2006) e2fsck 1.39 (29-May-2006) /dev/hdf6 is mounted. WARNING!!! Running e2fsck on a mounted filesystem may cause SEVERE filesystem damage. Do you really want to continue (y/n)? no check aborted.
Этот пример говорит о том, что проверку дисковых носителей (файловых систем) нужно производить в размонтированном состоянии. Единая команда будет вызывать другую программу, соответствующую тому типу файловой системы, который обнаружен на этом носителе:
$ ls /sbin/fsck* fsck fsck.cramfs fsck.ext2 fsck.ext3 fsck.msdos fsck.vfat
Предыдущий раздел: | Оглавление | Следующий раздел: |
Навигация в дереве имён | Архивы |