mostly t11 fixes
[distro-setup] / brc
diff --git a/brc b/brc
index c9cd4fcee4af66f81029ec406f6007de50d9ae0a..7b0167468819caf211a64b56615af3fc36ba608c 100644 (file)
--- a/brc
+++ b/brc
@@ -683,7 +683,7 @@ chrbind() {
 chumount() {
   local d
   # dev/pts needed for pacman signature check
-  for d in dev proc sys dev/pts; do
+  for d in dev/pts dev proc sys; do
     [[ -d $d ]]
     if mountpoint $d &>/dev/null; then
       m s umount $d
@@ -779,6 +779,19 @@ despace() {
   done
 }
 
+# get ipv4 ip from HOST. or if it is already a number, return that
+hostip() {
+  local host="$1"
+  case $host in
+    [0-9:])
+      echo "$host"
+      ;;
+    *)
+      getent ahostsv4 "$host" | awk '{ print $1 }' | head -n1
+      ;;
+  esac
+}
+
 dig() {
   command dig +nostats +nocmd "$@"
 }
@@ -816,7 +829,10 @@ digdiff() {
 dt() {
   date "+%A, %B %d, %r" "$@"
 }
-ccomp date dt
+dtr() {
+  date -R "$@"
+}
+ccomp date dt dtr
 
 dus() { # du, sorted, default arg of
   du -sh ${@:-*} | sort -h
@@ -824,7 +840,7 @@ dus() { # du, sorted, default arg of
 ccomp du dus
 
 
-e() { echo "$@"; }
+e() { printf "%s\n" "$*"; }
 
 # echo args
 ea() {
@@ -860,7 +876,11 @@ ediff() {
 etail() {
   tail -F /var/log/exim4/mainlog -n 200 "$@"
 }
-ccomp tail etail
+etail2() {
+  tail -F /var/log/exim4/mymain -n 200 "$@"
+}
+
+ccomp tail etail etail2
 
 # print exim old pids
 eoldpids() {
@@ -920,14 +940,18 @@ eless() {
 }
 ccomp less eless
 eqcat() {
-  exiqgrep -i -o 60 | while read -r i; do
+  exiqgrep -ir.\* -o 60 | while read -r i; do
     hlm exim -Mvc $i
     echo
     hlm exigrep $i /var/log/exim4/mainlog | cat ||:
   done
 }
 eqrmf() {
-  exiqgrep -i | xargs exim -Mrm
+  # other ways to get the list of message ids:
+  # exim -bp | awk 'NF == 4 {print $3}'
+  # # this is slower 160ms, vs 60.
+  # exipick -i
+  exiqgrep -ir.\* | xargs exim -Mrm
 }
 
 econfdevnew() {
@@ -960,6 +984,14 @@ faf() { # find all files. use -L to follow symlinks
        -o -name .undo-tree-history -prune \) -type f 2>/dev/null
 }
 
+# full path without resolving symlinks
+fp() {
+  local dir base
+  base="${1##*/}"
+  dir="${1%$base}"
+  printf "%s/%s\n" $(cd $dir; pwd) "$base"
+}
+
 
 # mail related
 frozen() {