Знайдіть ім’я каталогу та розмір файлу в Linux


0

У мене є різні папки, які використовуються для каналів продуктів на моєму сервері під назвою "empro". Іноді ці папки заповнюються, тому я знаходжу їх на сервері за допомогою:

find /var/www/vhosts -type d -name 'empro'

Це правильно дасть мені повний перелік каталогів, які я шукаю, і тоді я буду використовувати вручну:

du -h

Чи є спосіб я запустити команду find, а також вивести розмір каталогу у читаному для людини форматі?

Відповіді:


1

Спробуйте це:

find /var/www/vhosts -type d -name 'empro' | xargs du -sh

Це одне і те ж findречення, і потім xargsви створюєте du -shкожен знайдений каталог.


findі xargsдобре працювати разом із параметрами -print0та -0параметрами, обробляти назви файлів із пробілами, новими рядками, божевільними символами в них. І синтаксис має менше {}& \;символів, тому менше розкопок / цитування
Xen2050

1

Ви можете спробувати щось на кшталт:

find /var/www/vhosts -type d -name 'empro' -exec du -h {} \;

Якщо ви хочете зберегти інформацію лише для конкретного каталогу, ви можете використовувати ключ -s:

find /var/www/vhosts -type d -name 'empro' -exec du -sh {} \;
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.