From 8a507afb11f65c06e7df51010d52af170e28bc16 Mon Sep 17 00:00:00 2001 From: Alexey Skobkin Date: Wed, 22 Nov 2017 01:52:04 +0300 Subject: [PATCH] .screenrc with per-machine customizable backtick scripts. hwtemp-desktop.sh backtick for ASRock X399 Taichi CPUTIN, loadavg.sh backtick for fixed load average backtick and memory.sh for new memory usage backtick. --- .gitignore | 1 + screen/.gitignore | 1 + screen/.screenrc | 9 +++++---- screen/README.md | 22 ++++++++++++++++++++++ screen/backticks/hwtemp-desktop.sh | 5 +++++ screen/backticks/loadavg.sh | 2 ++ screen/backticks/memory.sh | 2 ++ 7 files changed, 38 insertions(+), 4 deletions(-) create mode 100644 .gitignore create mode 100644 screen/.gitignore create mode 100644 screen/README.md create mode 100755 screen/backticks/hwtemp-desktop.sh create mode 100755 screen/backticks/loadavg.sh create mode 100755 screen/backticks/memory.sh diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57f1cb2 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/.idea/ \ No newline at end of file diff --git a/screen/.gitignore b/screen/.gitignore new file mode 100644 index 0000000..760d2d3 --- /dev/null +++ b/screen/.gitignore @@ -0,0 +1 @@ +/backticks/?.sh \ No newline at end of file diff --git a/screen/.screenrc b/screen/.screenrc index 5430cc8..e24bbbe 100644 --- a/screen/.screenrc +++ b/screen/.screenrc @@ -9,7 +9,7 @@ screen -t sudo2 sudo -i select 0 # Huge scrollback -defscrollback 4000 +defscrollback 16000 altscreen on term screen-256color @@ -19,15 +19,16 @@ bind '.' next hardstatus alwayslastline # Backtick commands to output in the hardstatus -backtick 1 5 5 sh -c 'sensors | fgrep -i "core " | tr "\n" " " | sed -e "s/Core\ [0-9]\:[ ]\++//g;s/ ([^)]*)//g;s/ $//"' -backtick 2 10 10 sh -c 'uptime | awk "{print \$8 \$9 \$10}" | sed -e "s/,/ /g"' +backtick 1 5 5 sh -c '~/.dotfiles/screen/backticks/1.sh' +backtick 2 10 10 sh -c '~/.dotfiles/screen/backticks/2.sh' +backtick 3 10 10 sh -c '~/.dotfiles/screen/backticks/3.sh' # http://www.gnu.org/software/screen/manual/html_node/String-Escapes.html # # %H : hostname # %= : expand to fill all space (used here to make remaining content flush right) # %` : print output of 'backtick' command (defined elsewhere in .screenrc) -hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][ %2` ][ %1` ][%{B} %d-%m-%Y %{W}%c %{g}]' +hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][ %1` ][ %2` ][ %3` ][%{B} %d-%m-%Y %{W}%c %{g}]' # use hjkl keys to resize regions #bind -c rsz h eval "resize -h -5" "command -c rsz" diff --git a/screen/README.md b/screen/README.md new file mode 100644 index 0000000..5d410b5 --- /dev/null +++ b/screen/README.md @@ -0,0 +1,22 @@ +# GNU Screen configuration + +```bash +cd ~/.dotfiles/screen +``` + +1. Create symbolic link for main config file: + +```bash +ln -s .screenrc ~/.screenrc +``` + +2. Create symbolic links for [backtick](https://www.gnu.org/software/screen/manual/html_node/Backtick.html) scripts for each machine. + +```bash +# Choose desired backtick scripts for each (1-3) slot and create symbolic links +# Suppose your current machine is 'desktop' +cd backticks +ln -s hwtemp-desktop.sh 1.sh +ln -s loadavg.sh 2.sh +ln -s memory.sh 3.sh +``` diff --git a/screen/backticks/hwtemp-desktop.sh b/screen/backticks/hwtemp-desktop.sh new file mode 100755 index 0000000..4dd3d32 --- /dev/null +++ b/screen/backticks/hwtemp-desktop.sh @@ -0,0 +1,5 @@ +#!/usr/bin/env bash +# Core i7-4820k +#sensors | fgrep -i "core " | tr "\n" " " | sed -e "s/Core\ [0-9]\:[ ]\++//g;s/ ([^)]*)//g;s/ $//" +# Threadripper 1950X (via motherboard sensors, not die) +sensors | fgrep 'CPUTIN' | awk '{print $2}' diff --git a/screen/backticks/loadavg.sh b/screen/backticks/loadavg.sh new file mode 100755 index 0000000..cc9393e --- /dev/null +++ b/screen/backticks/loadavg.sh @@ -0,0 +1,2 @@ +#!/usr/bin/env bash +cat /proc/loadavg | awk '{print $1, $2, $3}' diff --git a/screen/backticks/memory.sh b/screen/backticks/memory.sh new file mode 100755 index 0000000..2c852e1 --- /dev/null +++ b/screen/backticks/memory.sh @@ -0,0 +1,2 @@ +#!/usr/bin/env bash +free -h | fgrep -i 'mem:' | awk '{print $3, "/", $2}' \ No newline at end of file