Compare commits

..

12 Commits

Author SHA1 Message Date
6b15442c3f remove automatic screen title from .bash_aliases 2025-01-02 15:10:03 +01:00
24721f07cb move automatic screen title to README (.bashrc) 2025-01-02 15:09:23 +01:00
34e341b224 use alias st automatically if inside screen 2025-01-02 14:55:03 +01:00
c511042ca2 bash_aliases: add custom prompt to cssh?
requires testing ...
2025-01-02 13:07:22 +01:00
2f1fdf4e3e bash_aliases: st (screen title)
use st to set the title of the current GNU screen window to username@hostname
2025-01-02 13:06:17 +01:00
69d2c05208 bash_aliases: ls -color=auto
add some color to my bash life ...
2025-01-02 12:41:38 +01:00
b015986f0a Update README.md 2025-01-01 21:34:24 +01:00
1dc50b771a Update README.md 2025-01-01 21:33:24 +01:00
dac6dc2e7d add dflocal to list local-only filesystems 2024-07-22 10:42:29 +02:00
89d2efdc74 add -x arg to du in function dush
so it does not traverse into other filesystems - makes no sense for the intended use
2024-07-05 08:56:23 +02:00
678137502d add upgrade function to make apt-fast optional 2024-06-19 10:37:25 +02:00
e33a08e4f6 add screenrc
tried and tested!
2024-01-06 17:39:54 +01:00
3 changed files with 152 additions and 6 deletions

View File

@@ -11,4 +11,30 @@ Add to `.bashrc` or `.bash_aliases`:
cd
wget -O .spezi.bash_aliases --quiet -N "https://git.ip.spezi.it/Spezi/dotfiles/raw/branch/main/bash_aliases"
. ~/.spezi.bash_aliases
```
# Custom Prompt
Add to `.bashrc`:
```
PS1='[\[\e[38;5;215m\]$?\[\e[0m\]][\[\e[38;5;40m\]\t\[\e[0m\]][\[\e[96m\]\u\[\e[0m\]@\[\e[38;5;32m\]\H\[\e[0m\]][\[\e[96m\]\w\[\e[0m\]] '
```
Nice editor: [https://bash-prompt-generator.org/](https://bash-prompt-generator.org/)
# automatic GNU screen window title
```
[[ "${TERMCAP}" == *"screen"* ]] && printf '\ek%s\e\\' $(whoami)@$(uname -n)
```
# all-in-one
```
cd
wget -O .spezi.bash_aliases --quiet -N "https://git.ip.spezi.it/Spezi/dotfiles/raw/branch/main/bash_aliases"
. ~/.spezi.bash_aliases
PS1='[\[\e[38;5;215m\]$?\[\e[0m\]][\[\e[38;5;40m\]\t\[\e[0m\]][\[\e[96m\]\u\[\e[0m\]@\[\e[38;5;32m\]\H\[\e[0m\]][\[\e[96m\]\w\[\e[0m\]] '
[[ "${TERMCAP}" == *"screen"* ]] && printf '\ek%s\e\\' $(whoami)@$(uname -n)
```

View File

@@ -1,10 +1,10 @@
# ======
# shorts
# ======
alias l='ls -l'
alias k='ls -la'
function ö { l --color $1 | less; }
function j { if ! [ -z $2 ]; then k --color $1 | grep -i $2 --color=never; else k --color | grep -i $1 --color=never; fi;}
alias l='ls -l --color=auto'
alias k='ls -la --color=auto'
function ö { l --color=auto $1 | less; }
function j { if ! [ -z $2 ]; then k --color=auto $1 | grep -i $2 --color=never; else k --color=auto | grep -i $1 --color=never; fi;}
# ============================
# expanded commands / "macros"
@@ -13,12 +13,14 @@ function grepr { grep -n -i -r "${@:1}" . --color=always | grep -v -e "Binär" -
function grepnr { grep -n -r "${@:1}" . --color=always | grep -v -e "Binär" -e "Binary file" -e "rr-cache"; }
function runs { ps -ef | grep $1 | grep -v grep; }
function timestamptodate { date -d @$1; }
function dush { pwd=$(pwd); cd "$1"; sudo du -csh --apparent-size ./* .[^.]* | grep -v "nicht gefunden" | sort -h; cd $pwd; }
function dush { pwd=$(pwd); cd "$1"; sudo du -xcsh --apparent-size ./* .[^.]* | grep -v "nicht gefunden" | sort -h; cd $pwd; }
function upgrade { if command -v apt-fast; then hereapt="apt-fast"; else hereapt="apt"; fi; sudo $hereapt update && sudo $hereapt upgrade; }
alias svim="sudo -E vim"
alias upgrade='sudo apt-fast update && sudo apt-fast upgrade'
alias aliases='vim ~/.bash_aliases; unalias -a && source ~/.bashrc; source ~/.bash_aliases'
alias realias='unalias -a && source ~/.bashrc; source ~/.bash_aliases'
alias rebash='unalias -a && source ~/.profile'
alias dflocal='df -Th | grep -v -e squashfs -e tmpfs -e sshfs -e cifs'
alias st="printf '\ek%s\e\\' $(whoami)@$(uname -n);"
# =============
# redefinitions
@@ -73,6 +75,7 @@ function random-string { if ! [ -z "$1" ]; then len=$1; else len=32; fi; cat /de
function cssh(){
ssh $@ -t 'cd $HOME ;
wget -O .spezi.bash_aliases --quiet -N "https://git.ip.spezi.it/Spezi/dotfiles/raw/branch/main/bash_aliases" ;
PS1='[\[\e[38;5;215m\]$?\[\e[0m\]][\[\e[38;5;40m\]\t\[\e[0m\]][\[\e[96m\]\u\[\e[0m\]@\[\e[38;5;32m\]\H\[\e[0m\]][\[\e[96m\]\w\[\e[0m\]] ';
bash --rcfile $HOME/.spezi.bash_aliases'
}

117
screenrc Normal file
View File

@@ -0,0 +1,117 @@
# $Id: screenrc,v 1.15 2003/10/08 11:39:03 zal Exp $
#
# /etc/screenrc
#
# This is the system wide screenrc.
#
# You can use this file to change the default behavior of screen system wide
# or copy it to ~/.screenrc and use it as a starting point for your own
# settings.
#
# Commands in this file are used to set options, bind screen functions to
# keys, redefine terminal capabilities, and to automatically establish one or
# more windows at the beginning of your screen session.
#
# This is not a comprehensive list of options, look at the screen manual for
# details on everything that you can put in this file.
#
# ------------------------------------------------------------------------------
# SCREEN SETTINGS
# ------------------------------------------------------------------------------
#startup_message off
#nethack on
#defflow on # will force screen to process ^S/^Q
deflogin on
#autodetach off
# turn visual bell on
vbell on
vbell_msg " Wuff ---- Wuff!! "
# define a bigger scrollback, default is 100 lines
defscrollback 1024
# ------------------------------------------------------------------------------
# SCREEN KEYBINDINGS
# ------------------------------------------------------------------------------
# Remove some stupid / dangerous key bindings
bind ^k
#bind L
bind ^\
# Make them better
bind \\ quit
bind K kill
bind I login on
bind O login off
bind } history
# An example of a "screen scraper" which will launch urlview on the current
# screen window
#
#bind ^B eval "hardcopy_append off" "hardcopy -h $HOME/.screen-urlview" "screen urlview $HOME/.screen-urlview"
# ------------------------------------------------------------------------------
# TERMINAL SETTINGS
# ------------------------------------------------------------------------------
# The vt100 description does not mention "dl". *sigh*
termcapinfo vt100 dl=5\E[M
# turn sending of screen messages to hardstatus off
hardstatus off
# Set the hardstatus prop on gui terms to set the titlebar/icon title
termcapinfo xterm*|rxvt*|kterm*|Eterm* hs:ts=\E]0;:fs=\007:ds=\E]0;\007
# use this for the hard status string
hardstatus string "%h%? users: %u%?"
# An alternative hardstatus to display a bar at the bottom listing the
# windownames and highlighting the current windowname in blue. (This is only
# enabled if there is no hardstatus setting for your terminal)
#
#hardstatus lastline "%-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%<"
# set these terminals up to be 'optimal' instead of vt100
termcapinfo xterm*|linux*|rxvt*|Eterm* OP
# Change the xterm initialization string from is2=\E[!p\E[?3;4l\E[4l\E>
# (This fixes the "Aborted because of window size change" konsole symptoms found
# in bug #134198)
termcapinfo xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'
# To get screen to add lines to xterm's scrollback buffer, uncomment the
# following termcapinfo line which tells xterm to use the normal screen buffer
# (which has scrollback), not the alternate screen buffer.
#
#termcapinfo xterm|xterms|xs|rxvt ti@:te@
# Enable non-blocking mode to better cope with flaky ssh connections.
defnonblock 5
# ------------------------------------------------------------------------------
# STARTUP SCREENS
# ------------------------------------------------------------------------------
# Example of automatically running some programs in windows on screen startup.
#
# The following will open top in the first window, an ssh session to monkey
# in the next window, and then open mutt and tail in windows 8 and 9
# respectively.
#
# screen top
# screen -t monkey ssh monkey
# screen -t mail 8 mutt
# screen -t daemon 9 tail -f /var/log/daemon.log
autodetach on
startup_message off
# hardstatus alwayslastline
shelltitle 'bash'
caption always '%{gk}%{wk} '
hardstatus alwayslastline '%{g}[%{w} %H %{g}]%{g}[ %{w}%?%-Lw%?%{=b kR}(%{W}%n*%f %t%?(%u)%?%{=b kR})%{= w}%?%+Lw%?%? %{g}][ %{d}%l%{g} ][ %{= w}%d.%m.%Y %c:%s%{g} ]%{W}'