Command Line & Bash programming

Работа с файлами в bash

Удаление файлов с названиями в неправильной кодировке

ls -il
  012345 -rw-r--r-- .... нужный нам файл
find . -inum 012345 -exec rm -i {} \;

Копирование файлов с указанием прогресса

Для копирования каталога замыкающий слеш не нужен, иначе сам каталог не будет создан, а перепишется лишь его содержимое:

rsync -avz --progress file1 file2
rsync -av /foo /dest

Установка/удаление программ

Очистка Debian от файлов, оставшихся после удаления пакетов

dpkg -l | awk '/^rc/ {print $2}'
dpkg -l | awk '/^rc/ {print $2}' | xargs sudo dpkg --purge

Первой строкой смотрим, какие каталоги и файлы настроек не были удалены после выполнения "dpkg --purge". Второй строкой -- удаляем "следы" от всех удаленных пакетов

Управление пользователями

Удаление пользователя:

deluser  имя_пользователя

Удаление домашнего каталога пользователя и почтового ящика

userdel -r имя_пользователя

Если появляется ошибка типа "userdel: пользователь находится в системе", то надо убить все процессы, запущенные от имени пользователя:

killall -9 -u имя_пользователя

Создание пользователя

adduser имя_пользователя

Изменяем существующему пользователю tony первучную группу на www

usermod -g www tony

Следующая команда перемещает домашний каталог пользователя со всем содержимым. Если новый каталог не существует, он автоматически создается. Сначала указывается новый каталог, а затем имя пользователя. Обязательно используйте флаги -d и -m:

usermod -d /server1/home/aborg/ -m aborg
apps