Переименование файлов во вложенной папке и загрузка

Для процесса используется 11 ГБ зарезервированной плюс 10 ГБ общей памяти.

32 ГБ оперативной памяти плюс 64 ГБ подкачки. общая доступная память

TOP Показывает сумму всей буферизованной + кэшированной памяти, а не только для вашего отдельного процесса.

Утечка памяти со временем потребляет больше памяти, чем должно быть выделено.

Только программист знает, что такое нормальное поведение. Либо вы отлаживаете программу на предмет неучтенной памяти, которая не перераспределяется.

TOP недостаточно для этой задачи.

sar лучше наблюдать за поведением во времени.

0
20.12.2019, 00:42
1 ответ
shopt -s globstar nullglob

for pathname in out/**/*.html; do
    newname=${pathname%.html}
    mv "$pathname" "$newname"
    aws2 s3 cp "$newname" "s3://$S3_BUCKET_NAME/"
done

Это касается

  1. не анализировать выводls(см. " Почему *не *анализировать `ls`(и что делать вместо этого )? " )(ваш цикл будет дополнительно перебирать всю остальную информацию , которая ls -lвыводит (разрешения, права собственности, метки времени и т. д. ), поэтому мне кажется странным, что вы говорите, что это работает на все )и
  2. правильно заключать переменные в кавычки (см. " Почему мой сценарий оболочки забивается пробелами или другими специальными символами? " )и
  3. обрабатывать имена путей как объекты, а не как строки(sedи т. д. в основном предназначены для редактирования строк текста; когда дело доходит до путей в Unix, они могут содержать символы новой строки (маловероятно, но это разрешено ); использование простой подстановки параметров для удаления суффикса имени файла безопаснее и быстрее, чем вызовsedecho)для этого )и
  4. найти файлы в любом подкаталоге out, имена файлов которых заканчиваются на .html, используя **glob (, включенный с помощью параметра оболочки globstar), и
  5. не запускать цикл, если шаблон ничему не соответствует (с помощью nullglobпараметра оболочки ).

Дополнительно не нужно использовать cd, так как значения $pathnameи $newnameбудут включать полный путь от текущего каталога до любого совпадающего имени файла.

3
28.01.2020, 02:21

Теги

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