из того, что я вам cp, кажется, интерпретировать мое предназначение как
источник.
Да, это так. Это потому, что общий синтаксис Linux/Unix выглядит примерно так:
[some command] [some command options] [source item] [destination item]
Итак, посмотрите на свою команду:
find absolute-path -name "*" -amin -120 -exec cp -f absolute-destination {} \;
это cp -f absolute-destination {} обратная с {} представляет исходный файл, найденный find команда и "абсолютное назначение" - это именно то, что это; назначение. Так что часть команда должна быть переписана как cp -f {} absolute-destination.
дополнительно:
- на
-name "*" является избыточным и излишним, если вы ищете все файлы, основанные на времени в любом случае; это означает, что вы можете просто канаву, что.
- кроме того, использование
amin немного запутанным, так как -amin -120 означает "файл доступ за последние 120 минут."Если вы хотите действовать на создание время файлов, которое должно быть изменено на cmin-aka: изменено n минут назад-вместо этого; подробнее в Linux find man-страница.
таким образом, последняя команда будет:
find absolute-path -cmin -120 -exec cp -f {} absolute-destination \;
но перед запуском этого cp команда вы всегда должны делать "сухой прогон" с помощью echo чтобы увидеть, что именно происходит такой:
find absolute-path -cmin -120 -exec echo {} \;
помните, выполнение теста "сухой прогон" команды, как это до запуск фактической / окончательной команды спасет вас головные боли в долгосрочной перспективе. Особенно, если вы планируете запускать команду как root.
вы никогда не знаете, если вы, возможно, сделали простую, непреднамеренную ошибку в логике команды, которые могут испортить неожиданным образом. И бросание неправильно структурированной команды в" производство " без тестирования может сэкономить вам несколько минут в начале, но затем может привести к часам-а в некоторых случаях и дням-работы по очистке. всегда безопасное воспроизведение при работе в команде линия.