|
0 / 0 / 0
Регистрация: 11.12.2016
Сообщений: 18
|
|
Подсчитать для каталога и его подкаталогов суммарный размер и количество файлов в заданном диапазоне размеров18.03.2019, 21:19. Показов 9562. Ответов 1
Написать скрипт, считающий для заданного каталога и всех его подкаталогов суммарный размер и количество файлов в заданном диапазоне размеров файлов (имя каталога задаётся пользователем в качестве аргумента командной строки, 2,3 аргументы командной строки диапазон размеров). Результаты выводятся на консоль в виде полный путь, количество файлов, суммарный размер.
Огромная благодарность за помощь!
0
|
|
| 18.03.2019, 21:19 | |
|
Ответы с готовыми решениями:
1
Вывести суммарный размер в байтах файлов каталога Как в PS1 выводить количество файлов и подкаталогов домашнего каталога? Удаления файлов с каталога ( и подкаталогов) если размер больше 5 Гб |
|
|
|||||||||||||||||||||
| 19.03.2019, 10:54 | |||||||||||||||||||||
Сообщение было отмечено Vollan как решение
Решение
Раз нужно написать скрипт, значит создадим файл с именем например test.sh
Напишем вверху особую строчку называющуюся Sha-bang! вызывающую интерпретатор bash #!/bin/bashНам нужна тулза способная искать рекурсивно файлы определенного размера и выводить путь к ним плюс сам размер Второе. Нам необходимо будет посчитать их количество и сложить их размер. С первой задачей может справиться утилита find. Чтобы посмотреть нужные опции введите в терминале LESS=+/"-size" man findМожете воспользоваться этой частью man страницы для вывода справки по использованию размеров диапазона. Давайте напишем образец. Так как нужен в выводе полный путь к файлам, а заданный в параметре путь может быть как полным так и относительным, применим конструкцию $(cd $1; pwd) приобразующую любой корректный путь в полный. Пока наш скрипт не рабочий просто подставляем в начало строки команду echo которую обязуемся в дальнейшем убрать echo find $(cd $1; pwd)Добавим нашему файлу права на выполнение chmod 755 test.shИ запустим получившийся скрипт
Добавим например маску имени файла echo find $(cd $1; pwd) -name "*.txt"Или лучше укажем например тип простого файла, ну чтобы отсеить каталоги и ссылки echo find $(cd $1; pwd) -type fТеперь напишем фильтр по которому команда find будет отбирать файлы нужного нам размера Определимся сразу, чтобы не переусложнять скрипт, что все размеры файлов у нас будут в байтах echo find $(cd $1; pwd) -type f -size +"$2"c -a -size -"$3"cКстати тут кроется небольшая тонкость. В указанный диапазон не попадают файлы совпадающие с самими заданными границами размеров. Тоесть по условию +size > file < -size. Если есть необходимость чтобы размеры отобраных файлов включали и границы заданого диапазона, необходимо начальный размер уменьшить на еденицу а замыкающий размер соответственно увеличить на единицу. Готово. Теперь нам понадобится отформатировать вывод. Посмотрим внимательно в инструментарий команды find LESS=+/"-printf format" man findЕсть подходящие квантификаторы к опции -fprintf Выведем каждый найденный файл в одной строке с параметрами разделенными пробелом. В первом параметре определим полный путь к файлу, а во втором его размер в байтах. find $(cd $1; pwd) -type f -size +$2 -a -size -$3 -printf "%p %s\n"Вот теперь можно убрать команду echo и сделать пробный заезд
Переходим ко второй части задания, подсчета файлов и общего тоннажа стопки Я не буду ломать себе голову и воспользуюсь инструментом awk который с подобной работой справляется на раз Перенаправим вывод команды find на вход утилиты awk через конвеер
Добавлю только что необходимо включить в скрипт проверку на корректность вводимых данных. Добавлено через 17 минут У меня возникло сомнение что необходимо выводить так: Полный путь К КАТАЛОГУ Число найденных файлов в этом каталоге Общий размер файлов в этом каталоге Тогда программа срочно принимает вид
1
|
|||||||||||||||||||||
| 19.03.2019, 10:54 | |
|
Помогаю со студенческими работами здесь
2
Перенос файлов из каталога и всех его подкаталогов в одну папку Подсчитать количество подкаталогов и файлов В заданном каталоге и его подкаталогах найти общее количество подкаталогов В заданном каталоге и его подкаталогах найти общее количество подкаталогов. На экран вывести только требуемый результат. Использовать цикл FOR /D Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию.
2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
|
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
|
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO
Апнулись до NET10.
Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта
так и в интерактивном режиме. из сложностей - чисто функциональный подход.
Решил. . .
|
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2.
Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники".
В. . .
|
|
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии.
. . .
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|