毎時間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