Linuxに初めて触れても、まだ学ぶことがたくさんあります!過去7日間にユーザーがログインした時間と分を出力するbashシェルスクリプトをviで作成しようとしています。理解が不足してエラーを解決していますが、目的の結果は得られません。どんな助けでも大変感謝します!
これはこれまでの私のweek-login.shの内容です。
hours=0
for x in $(last -s -7days $USER | grep -v wtmp)
do
a=$(echo $x | cut -b 51-52)
b=$(echo $x | cut -b 54-55)
hours=$((10#hours+=10#a))
minutes=$((10#minutes+=10#b))
echo "$hours $minutes"
done
この時点で私の間違いは
-bash: 10#hours: value too great for base (error token is "10#hours")
8進数を10進数に変換するには10#を含める必要がありますが、構文に問題があり、合計時間/分だけが表示されます。