回答:
このコマンドでそれを行うことができます
find /path/to/files* -mtime +365 -exec rm {} \;
いくつかの説明
/path/to/files* ファイルへのパスです。
-mtimeファイルが存在する日数を指定するために使用されます。+365は365日(1年)より古いファイルを検索します
-exec rmなどのコマンドを渡すことができます。
@Oli noteのおかげで編集->それを行うには:
find /path/to/files* -mtime +365 -delete
findそれ自体はエスケープ処理を行いますが、スクリプト作成中にいるのは悪い習慣ではありません。痛くない。
findエスケープを処理しなかった場合"{}"でも、-と同じ効果がありますが、{}どちらも機能せず、どちらも機能しません。これ{}と"{}"同じisn'tを振る舞う-とすることはできません-検索の特別な機能に起因します。いくつかの他のプログラムによって拡張する内容で、シェルによって展開されますどのような混乱している悪い癖。私たちは皆、時折その間違いを犯しますが、それは間違いであり、ベストプラクティスではありません。(人が{}ブレース拡張のパターンではないことを人間が理解できるように引用するかもしれませんが、それは単語分割とは無関係です。)
{}inを引用する必要があります-exec(読み取ります-exec rm "{}" \;)。これにより、スペースが適切に処理されるようになります...そして、の-delete代わりに関数を使用できます-exec。