1. Найти файлы старше 5 дней:
$ find . -mtime +5
2. Получить информацию о файле( размер, дата доступа, владелец и т.д.) можно с помощью опции -printf "%параметр" (см. man find)
Например:
$ find test.pl -printf "%s" покажет размер файла test.pl
$ find test.pl -printf "%u" покажет владельца
и т.д.
3. Изменить права рекурсивно
To change permissions recursively for all files in a
directory
$ find dirname -exec chmod xxx {} \; -print
where dirname is the directory you want to change permissions.
4. Найти самые большие файлы
$ find / -xdev -size +1024 -exec ls -al {} \; | sort -r -k 5
или
$ find /var -mount -ls -xdev | /usr/bin/sort -nr +6 | more
5. Найти файлы больше заданного размера
Найти файлы больше 1440k :
$ find . -size +1440k -exec ls -ld '{}' \;
6. Найти все *.gz файлы в текущей папке за исключением вложенной папки secondary и переместить найденное в папку ttt.
find . -type f -name "*.gz" -print|grep -v "secondary"|xargs -i mv {} ttt/{}
7. Найти все *.gz файлы в текущей папке за исключением вложенной папки log и удалить
find . -type f -name "*.gz" -print|grep -v "log"|xargs rm
8. Заархивировать все файлы в папке, кроме уже запакованных файлов:
find . -type f ! -name "*.gz" -exec gzip {} \;
9. Изменить права только файлов
find ./ -type f | xargs chmod a-x
10. Удалить файлы старше 5 дней
find . -mtime +5 -exec rm -i {} \;
$ find . -mtime +5
2. Получить информацию о файле( размер, дата доступа, владелец и т.д.) можно с помощью опции -printf "%параметр" (см. man find)
Например:
$ find test.pl -printf "%s" покажет размер файла test.pl
$ find test.pl -printf "%u" покажет владельца
и т.д.
3. Изменить права рекурсивно
To change permissions recursively for all files in a
directory
$ find dirname -exec chmod xxx {} \; -print
where dirname is the directory you want to change permissions.
4. Найти самые большие файлы
$ find / -xdev -size +1024 -exec ls -al {} \; | sort -r -k 5
или
$ find /var -mount -ls -xdev | /usr/bin/sort -nr +6 | more
5. Найти файлы больше заданного размера
Найти файлы больше 1440k :
$ find . -size +1440k -exec ls -ld '{}' \;
6. Найти все *.gz файлы в текущей папке за исключением вложенной папки secondary и переместить найденное в папку ttt.
find . -type f -name "*.gz" -print|grep -v "secondary"|xargs -i mv {} ttt/{}
7. Найти все *.gz файлы в текущей папке за исключением вложенной папки log и удалить
find . -type f -name "*.gz" -print|grep -v "log"|xargs rm
8. Заархивировать все файлы в папке, кроме уже запакованных файлов:
find . -type f ! -name "*.gz" -exec gzip {} \;
9. Изменить права только файлов
find ./ -type f | xargs chmod a-x
10. Удалить файлы старше 5 дней
find . -mtime +5 -exec rm -i {} \;