Файлы и поиск

Каталоги, копирование, поиск и аккуратные операции.

Навигация

Сначала понять, где находишься, что лежит рядом и сколько места занимает каталог.

pwd
ls
ls -lah
cd /etc/nginx
cd -
tree -L 2
du -sh .

Каталоги и копии

Перед правкой конфига делать копию рядом с датой или понятным суффиксом.

mkdir -p /opt/project/backups
cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
cp -a /opt/site /opt/site.bak
mv old-name new-name
rsync -avh source/ target/
rsync -avh --dry-run source/ target/

Поиск файлов

`find` хорош для точных условий, `locate` быстрее, если база обновлена.

find /etc -name "*.conf" -type f
find /var/log -type f -mtime -2
find . -type f -size +100M
find . -type f -empty
locate nginx.conf
updatedb

Безопасное удаление

Сначала посмотреть список, потом удалять. Для опасных шаблонов использовать `-print` перед `-delete`.

find /tmp -type f -name "*.tmp" -print
find /tmp -type f -name "*.tmp" -delete
rm -i file.txt
rm -r old-folder
rmdir empty-folder
trash-put file.txt

Просмотр файлов

Не открывать огромные логи редактором: смотреть начало, конец или нужный диапазон.

cat file.txt
less /var/log/syslog
head -n 40 /var/log/syslog
tail -n 80 /var/log/syslog
tail -f /var/log/syslog
sed -n '120,180p' file.txt

Что искать дальше

Полезные запросы: `find linux examples`, `rsync dry run`, `less search file`, `safe rm linux`.