bash スクリプトを作成していて、同じ行に右揃えのステータス (OK、警告、エラーなど) のメッセージを表示したいと考えています。
色がなくても配置は完璧ですが、色を追加すると、右揃えの列が次の行に誤って折り返されます。
#!/bin/bash
log_msg() {
RED=$(tput setaf 1)
GREEN=$(tput setaf 2)
NORMAL=$(tput sgr0)
MSG="$1"
let COL=$(tput cols)-${#MSG}
echo -n $MSG
printf "%${COL}s" "$GREEN[OK]$NORMAL"
}
log_msg "Hello World"
exit;