-1

/data/oozie-admi/ содержит несколько каталогов.

Эта команда

find /data/oozie-admi/ -type d -ctime +1 | xargs rm -rf [0] 

удаленная /data/oozie-admi/ папка. Нужно выяснить сценарии, в которых папка будет удалена.

2 ответа2

1

Эта страница U & L дает хорошее описание того, что ctime делает в команде find :

Согласно странице человека find

-ctime n
    File's status was last changed n*24 hours ago.

+n for greater than n

Поэтому -ctime +1 означает, что статус файла должен был измениться как минимум 48 часов назад.

-type d будет указывать только на возврат каталогов.

Так что find /data/oozie-admi/ -type d -ctime +1 будет соответствовать любому и всем каталогам, которые не были изменены за последние 48 часов.

Например, если у вас есть папка /data/oozie-admi/fish которая была создана более 48 часов назад и в которой в течение 48 часов в этой папке происходит множество обновлений, то эта папка будет исключена из вашего соответствия, но /data/oozie-admi/ не будет исключен, если файлы там не были изменены.

xargs rm -rf удалит все и все каталоги, которые ему передают. Это довольно опасно, так как если в корневой папке (/data/oozie-admi/) не было создано или удалено ни одного файла, то время его изменения не будет обновлено, а ваша папка /data/oozie-admi/ будет удалена. ,

Таким образом, по сути, эта строка сценария удалит этот каталог или любые его подкаталоги, если дата изменения каталога более 48 часов назад.

Я не уверен, что [0] должен делать. Из быстрого поиска я вижу, что это может быть полезно, если вы использовали это в операторе типа "if True", но у вас нет оператора if . В лучшем случае кажется, что она будет передана в качестве аргумента команде rm и поэтому вы удалите каталог с именем [0] в любом каталоге, в котором выполняется скрипт, а также в каталоге /data/oozie-admi/ .

0

Я думаю, что Вам нужно это:

find /data/oozie-admi/ -mindepth 1 -type d -ctime +1 | xargs rm -rf

или же:

find /data/oozie-admi/ -mindepth 1 -type d -ctime +1 -exec rm -rf +

Обе команды должны работать одинаково (в Linux), вторая более реалистичная для большого количества папок.

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