Se cierra porque el navegador abre una conexión TCP, realiza la transacción HTTP y luego dice "¡Terminé!" que normalmente cerrará la conexión. Como descubrió, el interruptor -k
mantendrá abierto k
el conector de escucha para futuras conexiones.
Чтобы переименовать любой файл старше N дней (N=30 в этом примере ), попробуйте:
find. -type f -mtime +30 -exec sh -c 'mv -i "$1" "$1.old"' MV {} \;
Описанный выше рекурсивный поиск в текущем каталоге. Если вы не хотите, чтобы он опускался в подкаталоги, используйте:
find. -maxdepth 1 -type f -mtime +3 -exec sh -c 'mv -i "$1" "$1.old"' MV {} \;
В целях безопасности вы можете сначала попробовать эту команду и, если вам нравятся результаты, удалитьecho
:
find. -maxdepth 1 -type f -mtime +3 -exec sh -c 'echo mv -i "$1" "$1.old"' MV {} \;
find.
Это запускает команду find
в текущем каталоге, .
.
-type f
Это указывает find
искать только обычные файлы.
-mtime +30
Это указывает find
искать только файлы старше 30 дней. Замените 30
любым номером, который вы хотите.
Обратите внимание, что, поскольку find
имеет особый способ округления возраста файла, точное ограничение для «старше 30 дней» может не соответствовать вашим ожиданиям. Подробности см. в man find
.
-exec sh -c 'mv -i "$1" "$1.old"' MV {} \;
Это указывает find
запускать команду mv
для каждого найденного файла. Опция -i
сообщает mv
интерактивно запрашивать перед перезаписью существующего файла. Таких вариантов множество. Подробности см. в man mv
.
Некоторые версии find
, такие как GNU find
, используют sh
в вышеупомянутом ненужном (наконечнике шляпы:спешке):
find. -type f -mtime +30 -exec mv -i {} {}.old \;
Это не требуется согласно POSIX и поэтому может быть непереносимым.