У меня есть следующая команда, которую я запускаю на cygwin:
find / cygdrive / d / tmp / * -maxdepth 0
-mtime -150 -типа d |
xargs du --max-deep = 0> folderizesreport.csv
Я собирался сделать с этой командой следующее:
для каждой папки в /d/tmp/
, которая была изменена за последние 150 дней, проверьте ее общий размер, включая файлы в ней, и сообщите об этом в файл foldersizesreport.csv
однако для меня этого сейчас недостаточно, как это оказывается внутри каждого
/d/tmp/subfolder1/somefile.properties
/d/tmp/subfolder2/somefile.properties
/d/tmp/subfolder3/somefile.properties
/d/tmp/subfolder4/somefile.properties
так, как вы видите внутри каждой подпапкиX, есть файл с именем somefile.properties
внутри него есть свойство SOMEPROPKEY=3808612800100
(среди прочих свойств)
это время в миллисекундах, мне нужно изменить команду, чтобы вместо -mtime -150
она включала только весь расчет
вложенная папка X, внутри которой находится файл somefile.properties
, где SOMEPROPKEY=3808612800100
- это время в миллисекундах в будущем, если значение SOMEPROPKEY=23948948
находится в прошлом, вообще не включайте папку
в foldersizesreport.csv
, потому что это не относится ко мне.
поэтому отчет о результатах должен выглядеть следующим образом:
/d/tmp/,subfolder1,<itssizein KB>
/d/tmp/,subfolder2,<itssizein KB>
и если subfolder3
имеет SOMEPROPKEY=34243234
(время в миллисекундах в прошлом), то его не будет в этом CSV-файле.
так что в основном я ищу:
find /cygdrive/d/tmp/* -maxdepth 0 -mtime -150 -type d |
<only subfolders that have in them property in file
SOMEPROPKEY=28374874827 - time in ms in future and
not in past | xargs du --max-depth=0 > foldersizesreport.csv