diff options
author | makefu <github@syntax-fehler.de> | 2013-11-05 23:40:11 +0100 |
---|---|---|
committer | makefu <github@syntax-fehler.de> | 2013-11-05 23:40:11 +0100 |
commit | 940d07624c6b82d5e7ec790c2ef49b4694a48794 (patch) | |
tree | 3f4bb46333429d8e9a4f566579f82cacbd3096c9 /ship/lib/core | |
parent | fe1017207310d0cfd6448750205d08b2455f20a2 (diff) | |
parent | 85c99011060b4b37a760fa24d0a0e23e83413bef (diff) |
Merge branch 'master' of github.com:krebscode/painload
Diffstat (limited to 'ship/lib/core')
-rw-r--r-- | ship/lib/core | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/ship/lib/core b/ship/lib/core new file mode 100644 index 00000000..6d126142 --- /dev/null +++ b/ship/lib/core @@ -0,0 +1,34 @@ +#!/bin/sh + +# logging +msg() { printf "$@\n" >&2 ;} +info() { msg "** $@" ;} +error() { msg "!! $@" ;} +exists(){ type "$1" >/dev/null 2>/dev/null; } +is_root(){ + test $(id -u) -eq 0 +} +get_hostname(){ + # finds the current hostname + # if ENV HOSTN is set echo $HOSTN + # We try the following: + # $HOSTN + # $HOSTNAME + # hostname + # uci system.hostname + # /etc/hostname + # if everything fails, it returns 1 and prints 'unknown' + + if [ -n "${HOSTN:-}" ] ; then printf "${HOSTN:-}" + elif [ -n "${HOSTNAME:-}" ] ;then printf "$HOSTNAME" + elif exists hostname ; then printf "$(hostname)" + elif exists uci ; then printf "$(uci get system.@system[0].hostname)" + elif [ -e /etc/hostname ] ;then printf "$(cat /etc/hostname)" + else printf "unknown"; return 1 + fi + return 0 +} + +line_to_dot(){ + while read line; do printf .; done; +} |