Назад | Перейти на главную страницу

Результаты неиспользования '{}' в find / mnt / tmp -atime +91 -exec rm -f {} \ ;?

Я использую следующий код дольше всего в системе, которую взял на себя:

find /mnt/tmp -atime +91 -exec rm -f {} \;

Однако, продолжая исследования, я вижу, что все говорят, что фигурные скобки следует заключать в одинарные кавычки, как показано ниже:

find /mnt/tmp -atime +91 -exec rm -f '{}' \;

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

Серверы - Ubuntu.

Воздействия, о которых вы говорите, проявятся, если у вас есть «специальные» символы в именах файлов (в отличие от специальных символов регулярного выражения). Наиболее очевидным было бы, если бы у вас был файл с именем foo /* - ваша команда rm пойдет и удалит foo затем /* без одинарных кавычек, которые вам, вероятно, не нужны.