Linux/コマンドメモ/rm
提供: 初心者エンジニアの簡易メモ
2015年5月20日 (水) 03:18時点における127.0.0.1 (トーク)による版 (ページの作成:「==サブも含めてディレクトリごと削除== rm -fr /var/.backup/tmp_export2/ ==30日以上たったログファイルを削除== find /tmp/log -name '*.log' -...」)
サブも含めてディレクトリごと削除
rm -fr /var/.backup/tmp_export2/
30日以上たったログファイルを削除
find /tmp/log -name '*.log' -mtime '+30' -exec rm -f {} \;
こちらのほうが高速?
find /tmp/log -name '*.log' -type f -mtime '+30' -print | xargs rm
引数に付けたdirpath内の30日以上たったログファイルを削除
sh rmlog.sh var/log1 var/log2
- rmlog.sh
#!/bin/bash for dirpath in $@ do if expr "$dirpath" : "[A-z0-9][A-z0-9_-]*$" > /dev/null; then # if [[ "$dirpath" =~ ^[A-z0-9][_A-z0-9_-]*$ ]]; then if [ -e $dirpath ]; then find $dirpath -name '*.*' -type f -mtime '+30' | xargs --no-run-if-empty rm -v fi else echo "error dirpath=$dirpath" fi done
ファイル削除
find /tmp/log -type f -exec rm {} \;