User Tools

Site Tools


основные_команды_для_работы_с_файлами

This is an old revision of the document!


Основные команды для работы с файлами

Команды для работы с файловой системой

Просмотр файловой системы - ls

типы файлов man ls

$ ls
$ ls -a
$ ls /bin
$ ls -l /
$ ls -l /dev
$ ls -l ..
$ ls -a .
$ ls ~root

Узнать время обращения к файлу:

$ #linux
$ ls -l --time=atime --time-style=full-iso /etc/krb5.keytab

$ #freebsd
$ ls -luT /etc/krb5.keytab

Файловые подстановки shell

$ echo /bin/*
$ echo /bin/u*
$ echo /bin/???
$ echo /bin/[cd]*
$ ls -l /bin/c*
$ ls -l /bin/cat /bin/chflags /bin/chio /bin/chmod /bin/cp /bin/csh
$ ls -l /bin/*c

Определние текущего каталога - pwd

Смена текущего каталога - cd

$ cd /usr
$ cd bin
$ cd ..
$ cd
$ cd -
$ cd ~u1

Создание файла - touch

Создание каталога - mkdir

Удаление файла - rm

Удаление каталога - rmdir

Копирование файлов и каталогов - cp

$ touch file1
$ mkdir dir1
$ cp file1 file2
$ cp file1 incorrectdirname
$ cp file1 dir1/
$ cp -r dir1/ dir2/

Перемещение и переименование файлов и каталогов - mv

$ mv file2 file3
$ mv dir2 dir3
$ mv file3 incorrectdirname
$ mv file3 dir1/
$ mv dir3 dir1/

Создание линков/ссылок на файлы и каталоги - ln

$ ln -s /etc/rc.conf file4

$ mkdir -p ~/var/db/mysql
$ touch ~/var/db/mysql/file.db

$ mkdir ~/disk2
$ mv ~/var/db/mysql ~/disk2/

$ ln -s ~/disk2/mysql/ ~/var/db/mysql
$ ls ~/var/db/mysql/

Команды для работы с содержимым файлов

Определение типа файла - file

$ file /usr/sbin/adduser
$ file /bin/sh
$ file /usr/share/man/man1/cat.1.gz

Просмотр файлов - more/less

$ more /etc/defaults/rc.conf

$ less /etc/defaults/rc.conf

Работа с архивами

dump/restore

cpio

tar

Создать архив:

$ tar -c -v -f имяфайлаархива.tar каталогилифайл ...

Посмотреть содержимое архива:

$ tar -t -f имяфайлаархива.tar

Раскрыть архив целиком:

$ tar -x -v -f имяфайлаархива.tar

Раскрыть отдельные файлы:

$ tar -xf имяфайлаархива.tar 'etc/fstab'
$ tar -xOf имяфайлаархива.tar 'etc/fstab'  - вывести на экран (STDOUT)
$ tar -xf имяфайлаархива.tar 'etc/'
$ tar -xf имяфайлаархива.tar '*fstab*'

Дополнительные ключи:

-z	- использовать gzip сжатие
-j	- использовать bzip2 сжатие

Пример архивирования с использованием ssh и разбиением на файлы размером не более 2GB

$ tar -cvf - apt-mirror/ | ssh root@backup.corpX.un "cd /mnt/rep1004; split -b 2GB - apt-mirror.tar."

Команды оценки использования дискового пространства

Статистика использования разделов - df

ключи -h, -t ufs

Размер каталога - du

ключи -h, -s, -d1

$ du -s -h /usr/share/

$ du -d 1 /usr/share/

Команды поиска файлов

Метоположение программ - which

Поиск файлов по индексированной базе - locate

Для переиндексации используется программа

$ /usr/libexec/locate.updatedb

Полный поиск файлов - find

Поиск файла, по имени и по шаблону имени

$ find /usr/share -name index.html
$ find /usr/share -name '*.html'

Поиск файлов, которые модифицировались за последние 2 дня и вывод полной информации про них

$ find /var/log -ctime -2 -type f -ls

Поиск файлов более новых чем некоторый

$ touch -t 200901051230 /tmp/xtime
$ find /etc/ -newer /tmp/xtime -type f

Пример выполнения команд над найденными файлами

# find /usr/ports/ -name '*.tbz' -exec mv {} /usr/ports/packages/All/ \;
основные_команды_для_работы_с_файлами.1284461392.txt.gz · Last modified: 2013/05/22 13:50 (external edit)