I3
如何在 i3status 欄中顯示正常執行時間?
我想以常用單位顯示正常執行時間(因此,如果超過一小時,則不僅以分鐘為單位;如果超過一分鐘,也不僅僅是以秒為單位;例如,“1:02:30”表示 1 小時、2 分鐘和30 秒是我理想的時間格式)在我的 i3status 欄中。我什至無法找到如何在任何單位的 i3status 欄中顯示正常執行時間。我在 GitHub 上找到了這個 repo,它似乎聲稱可以這樣做,但是複制這些配置給了我與執行這個repo 的 config
status_command
中的行相關的錯誤。即該行是:status_command
status_command ~/.i3/i3status.sh ~/.i3/i3status.conf
猜測它只適用於舊版本的 i3。任何想法如何做到這一點?這是我現在的
~/.i3status.conf
文件。我的發行版是 Gentoo Linux。
我找到了解決方案。我只是不太了解它的語法。我只需要編輯我的
~/.i3/i3status.sh
文件。就是現在:#!/bin/sh /usr/bin/i3status -c $HOME/.i3status.conf | while : do read line RAM=`free -kh | grep Mem | awk '{print $3}'` TOTR=$(cat /proc/meminfo | grep MemT | sed 's/.*\://g' | sed 's/ *//g' | sed 's/kB//g') TOT=$(octave --eval "$TOTR/1024^2" | sed 's/ans = *//g' | sed 's/$/G/g' ) # Put uptime uptime=`uptime | awk '{print $3 " " $4}' | sed 's/,.*//'` hour=$(echo $uptime | sed 's/\:.*//g') min=$(echo $uptime | sed 's/.*\://g') UP="$hour h $min m" # Compile C++ CPU prog and run it g++ -o cpu.o $HOME/.i3/cpu.cpp CPU=$(./cpu.o) printf "%s\n" "Up: $UP | CPU: $CPU% | RAM: $RAM/$TOT | $line" done
# Put uptime
與正常執行時間最相關的行在# Compile C++...
最終printf "%s\n"...
命令之間。我完整的 i3 配置文件可以在這個儲存庫中找到。