Bashスクリプトを使用して日付と時刻付きでファイルを削除する方法


方法1: findコマンドを使用する方法

#!/bin/bash
target_directory="/path/to/directory"  # ファイルが存在するディレクトリのパス
target_date="2024-01-31"  # 削除したいファイルの日付
find "$target_directory" -type f -name "*$target_date*" -exec rm {} \;

上記のスクリプトでは、findコマンドを使用して指定されたディレクトリ内のファイルを検索し、特定の日付を含むファイルを削除します。

方法2: lsコマンドとgrepコマンドを使用する方法

#!/bin/bash
target_directory="/path/to/directory"  # ファイルが存在するディレクトリのパス
target_date="2024-01-31"  # 削除したいファイルの日付
files=$(ls "$target_directory" | grep "$target_date")
for file in $files; do
    rm "$target_directory/$file"
done

上記のスクリプトでは、lsコマンドとgrepコマンドを使用して特定の日付を含むファイルを検索し、それぞれのファイルを削除します。

これらは一般的な削除方法の一部です。特定の日付と時刻に基づいてファイルを削除するためには、スクリプト内のtarget_date変数を目的の日付に設定してください。必要に応じて、対象のディレクトリパスも変更してください。

なお、ファイルを削除する際は慎重に行ってください。誤って重要なファイルを削除しないように、スクリプトを実行する前にバックアップを作成することをお勧めします。