deb | rpm | txtなどの2つの拡張子を持つファイルのリストを取得します。

deb | rpm | txtなどの2つの拡張子を持つファイルのリストを取得します。

毎時間Ubuntuコンピュータのフォルダ*.(deb|rpm)からファイルを削除したいと思います。Downloads

私のcrontabにこれがあります

* */1 * * * cd /home/alexalannunes/Downloads && ls *.deb > log.txt && rm  *.deb

どのファイルが削除されたかを記録したいからです。

しかし、この行は*.debファイルだけを削除したいと思います。(.deb|.rmp|.other_file)

これは可能ですか?

Googleで検索しようとしましたが、何も見つかりませんでした。

ありがとうございます!

答え1

必要に応じて拡張子を指定でき、個別にリストするだけです。たとえば、

* */1 * * * cd /home/alexalannunes/Downloads && ls *.deb *.rpm > log.txt && rm  *.deb *.rpm

答え2

crontabが実行されているシェルが中括弧拡張をサポートしている場合は、中括弧拡張を使用して複数の拡張を提供できます。

*.{rpm,deb,other_file}

それ以外の場合は、複数の拡張機能を接続できます。

*.rpm *.deb

また、詳細な出力を持つ別途必要lsはなく、存在しないファイルやパラメータを無視してメッセージを表示しないように追加する必要があります。rm-v-f

* */1 * * * rm -fv /home/alexalannunes/Downloads/*.{deb,rpm} > log.txt

または

* */1 * * * rm -fv /home/alexalannunes/Downloads/*.deb /home/alexalannunes/Downloads/*.rpm > log.txt

関連情報