Получить общую сумму веса каждого файла в строке

Я работаю с AIX, и мне нужно узнать общую сумму файлов, созданных в каталоге за последние 30 дней. Мне уже удалось извлечь в файл все, что было создано за эти 30 дней, и с помощью команды AWK мне удалось создать еще один файл, в котором у меня есть вес каждого из этих файлов. В заключение, у меня уже есть файл с весом каждой строки, но мне нужно добавить каждый, чтобы получить общий вес, и я не знаю, как это сделать. Важно уточнить, что там около 2 000 000 строк. Спасибо

0
26.06.2017, 23:17
3 ответа

Чтобы получить сумму размеров файлов, перечисленных по одному в строке в file.list(предполагается, что имена файлов не содержат символов новой строки):

perl -lne '$sum+=-s; END{print $sum}' file.list

Обратите внимание, что для символических ссылок это считается размер цели символической ссылки.

Это видимый размер, который обычно отличается от использования диска.

1
28.01.2020, 02:45

Эта команда покажет сумму размеров файлов, которые были изменены за последние 30 дней:

find. -mtime -30 -exec stat -c %s {} \; | awk '{SUM+=$1}END{print SUM}'

Редактировать :сумму файлов

0
28.01.2020, 02:45

Я использую эту команду, и она работает:

awk '{suma=0; for (i=1; i<=NF; i++) suma=$i;sumatotal=sumatotal+suma; print sumatotal}' COT2

COT2 — это имя файла. Я получаю общий размер в КБ, а затем конвертирую это число в ГБ.

0
28.01.2020, 02:45

Теги

Похожие вопросы