diff options
Diffstat (limited to 'lib/container/top')
-rwxr-xr-x | lib/container/top | 118 |
1 files changed, 0 insertions, 118 deletions
diff --git a/lib/container/top b/lib/container/top deleted file mode 100755 index d9baa1c..0000000 --- a/lib/container/top +++ /dev/null @@ -1,118 +0,0 @@ -#!/bin/sh - -# Copyright (C) 2014-2021 Daniel Baumann <daniel.baumann@open-infrastructure.net> -# -# SPDX-License-Identifier: GPL-3.0+ -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -set -e - -PROJECT="open-infrastructure" -PROGRAM="container" -COMMAND="$(basename ${0})" - -Parameters () -{ - GETOPT_LONGOPTIONS="delay:," - GETOPT_OPTIONS="d:," - - PARAMETERS="$(getopt --longoptions ${GETOPT_LONGOPTIONS} --name=${COMMAND} --options ${GETOPT_OPTIONS} --shell sh -- ${@})" - - if [ "${?}" != "0" ] - then - echo "'${COMMAND}': getopt exit" >&2 - exit 1 - fi - - eval set -- "${PARAMETERS}" - - while true - do - case "${1}" in - -d|--delay) - DELAY="${2}" - shift 2 - ;; - - --) - shift 1 - break - ;; - - *) - echo "'${COMMAND}': getopt error" >&2 - exit 1 - ;; - esac - done -} - -Usage () -{ - echo "Usage: ${PROGRAM} ${COMMAND} [-d|--delay DELAY]" >&2 - exit 1 -} - -Parameters "${@}" - -DELAY="${DELAY:-1}" -HOST="$(hostname -f 2> /dev/null || hostname)" - -# Pre hooks -for FILE in "${HOOKS}/pre-${COMMAND}".* "${HOOKS}/${NAME}.pre-${COMMAND}" -do - if [ -x "${FILE}" ] - then - "${FILE}" - fi -done - -# Run -Top () -{ - HOME="$(tput cup 0 0)" - ED="$(tput ed)" - EL="$(tput el)" - - printf '%s%s' "${HOME}" "${ED}" - - while true - do - ROWS="$(tput lines)" - COLS="$(tput cols)" - CMD="${@}" - - ${SHELL:=sh} -c "${CMD}" | head -n ${ROWS} | while IFS= read LINE - do - printf '%-*.*s%s\n' ${COLS} ${COLS} "${LINE}" "${EL}" - done - - printf '%s%s' "${ED}" "${HOME}" - sleep ${DELAY} - done -} - -trap 'clear' EXIT HUP INT QUIT TERM - -Top "${PROGRAM} list && printf '%-59s %-19s\n' \" Host: ${HOST}\" \"\$(date +%Y-%m-%d\ %H:%M:%S)\"" - -# Post hooks -for FILE in "${HOOKS}/post-${COMMAND}".* "${HOOKS}/${NAME}.post-${COMMAND}" -do - if [ -x "${FILE}" ] - then - "${FILE}" - fi -done |