bash

Let’s encrypt 更新失敗 対応

sclでインストールした、python2.7 で、証明書の自動更新が失敗していた為、
手動で実行してみると下記のエラーとなる。

OSError: Command /opt/eff.org/certbot/venv/bin/python2.7 -c "import sys, pip; sys...d\"] + sys.argv[1:]))" setuptools pip wheel failed with error code 1

調べてみると、pipのバージョンが古い可能性が有るということなので、下記を実行して更新ができるようになりました。

pip2.7 install --upgrade setuptools
pip2.7 install --upgrade virtualenv
pip2.7 install --upgrade pip

日付毎のログファイルを一週間毎にディレクトリにまとめる(bash)

ログファイルが日付毎に作成されてて大変な事になっていたので、一週間毎にディレクトリにまとめました。

ファイルのフォーマットは xxxxxxx_yyyy_mm_dd.log です。

#!/bin/bash
for file in *.log; do
    d="${file//xxxxxx_/}" # replace
    d="${d//.log/}"
    IFS='_'
    set -- $d
    echo "$d"
    weekday=`date -v$1y -v$2m -v$3d "+%w"`
    if [ "$weekday" = "1" ] 
    then
      echo "mkdir"
      dir=$d
      mkdir "$dir"
    fi
    mv "$file" "$dir/$file"
done

シェル書くことないから勉強になりました。
※ファイルは月曜日から始まっている前提です。