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

find /home/backups -mtime +30 -type f -exec rm -rf {} \; 

Это прекрасно работает, если знать местоположение / путь, поэтому, если путь отличается на другом компьютере, как я могу изменить команду для работы на всех машинах?

Если я использую приведенную ниже команду, которая удалит все файлы 30-дневной давности, но я только собираюсь очистить только этот уникальный набор файлов резервных копий:

find . -mtime +3 -exec rm {} ';' 

Спасибо

1 ответ1

3

Я не знаю, как бы вы выполнили команду на всех машинах автоматически через ssh? или вручную?

в любом случае, если вы хотите сэкономить на вводе пути, вы можете подумать, что на каждой машине создайте переменную с тем же именем, например BACKUP_DIR, она сохранит путь, необходимый для выполнения очистки.

Затем в вашей команде поиска не жестко закодируйте путь, а используйте переменную.

если вы делаете это автоматически через ssh, вы знаете путь, когда устанавливаете соединение. затем просто добавьте путь в вашу находку.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .