Rで古いファイルを削除する。
# Delete files with creation dates prior to 365 days.
library("dplyr")
# 削除したいディレクトリパスを指定
setwd("~/YOURPATH/")
# set date and word
time <- Sys.Date() - 365 # 本日より365日以前のファイルを削除
search_word <- "ABC" # file名に"ABC"という文字列を含む
file.info(list.files()) %>% # ディレクトリ内のファイル一覧情報を取得
filter(isdir == FALSE) %>% # ディレクトリを除くファイル
filter(as.Date(mtime) < as.Date(time)) %>% # 指定日以前のファイルを抽出
arrange(mtime) %>%
tibble::rownames_to_column(var = "file_name") %>% # ファイル名を行に追加
select(file_name) %>%
filter(grepl(search_word, file_name)) %>% # search_wordを含むファイルを残す
t() %>% # t→as.vectorでデータフレームをベクトルに
as.vector() %>%
file.remove() # 削除
指定ディレクトリのtime以前のsearch_wordを含む古いファイルを消去します。
タイムスケジューラやcronで定期的に実行してやれば古いファイルを自動削除できます。
コマンドプロンプトでやった方が遥かに簡単ですが、dplyrで抜き出すのが面白いので…。