Dre4m Shell
Server IP : 127.0.0.2  /  Your IP : 3.15.27.235
Web Server : Apache/2.4.18 (Ubuntu)
System :
User : www-data ( )
PHP Version : 7.0.33-0ubuntu0.16.04.16
Disable Function : disk_free_space,disk_total_space,diskfreespace,dl,exec,fpaththru,getmyuid,getmypid,highlight_file,ignore_user_abord,leak,listen,link,opcache_get_configuration,opcache_get_status,passthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,php_uname,phpinfo,posix_ctermid,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,posix,_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_times,posix_ttyname,posix_uname,pclose,popen,proc_open,proc_close,proc_get_status,proc_nice,proc_terminate,shell_exec,source,show_source,system,virtual
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/bin/X11/X11/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : /usr/bin/X11/X11/byobu-ugraph
#!/bin/bash
#---------------------------------------------------------------------
# Script to display a byobu notification "history graph".
#
# Designed to work with the wonderful byobu(1) but can be run
# stand-alone.
#---------------------------------------------------------------------
#
# Copyright (C) 2011 Canonical Ltd.
#
# Author: James Hunt <james.hunt@canonical.com>
#
# 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, version 3 of the License.
#
# 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/>.
#
#---------------------------------------------------------------------

PKG="byobu"
[ -r "$HOME/.byoburc" ] && . "$HOME/.byoburc"
[ -z "${BYOBU_PREFIX}" ] && export BYOBU_PREFIX="/usr" || export BYOBU_PREFIX
. "${BYOBU_PREFIX}/lib/${PKG}/include/common"

script_name=${0##*/}
min_default=0
max_default=100
points_default=5
theme_default=vbars_8
newline="\n"
rotate=y

error()
{
  msg="$*"
  echo "ERROR: $msg" >&2
}

die()
{
  error "$*"
  exit 1
}

usage()
{
cat <<EOT
Description: Display a graph of historical indicator values using
             byobu-ulevel.

Usage: $script_name [options] [command [args...]]

Options:

 -f <file>   : File to read data points from.
               (only required if no command specified).
 -h          : Show this help.
 -m <num>    : Minimum value (default=$min_default).
 -n          : Supress output of newline character.
 -p <points> : Specify number of data points in graph
               (default=$points_default).
 -r          : Do not rotate file <file> (default is to rotate).
               Option implies file <file> should not be written to
               so a command cannot follow script options in this case.
 -t <theme>  : 'byobu-ulevel' theme to use (default=$theme_default).
 -x <num>    : Maximum value (default=$max_default).


Examples:

  Using $script_name to run a command, rotate log and display graph.

  Here we specify a command to display available memory.
  Trailing echo adds a required newline
  Note no filename specified.

    $script_name "(/usr/lib/byobu/mem_used | sed -e 's/% //g';echo)"


  Using $script_name just to rotate log and display the graph

    file=/tmp/load.dat
    awk '{ print \$1}' /proc/loadavg >> \$file
    # Note: we need to specify what we consider to be a "reasonable" maximum load
    $script_name -m 3.0 -f \$file

Notes:

  - If you specify 'command', care must be taken with shell quoting to
    avoid expansion prior to this script running the command.
  - If '-r' is not specified, the file <file> will be rotated such that
    at most <points> lines are retained on each invocation of this
    script.

EOT
}

get_data()
{
  needed_lines=$points

  if [ ! -f $file ]
  then
    return
  fi

  lines=$(wc -l $file|awk '{print $1}')

  if [ $lines -lt $needed_lines ]
  then
    # insufficient data
    return
  fi

  bytes=$(<${file})
  bytes=$(echo "$bytes"|tail -n ${needed_lines})
  [ $lines -eq $needed_lines -o $rotate = n ] && echo "$bytes" && return

  # rotate
  tmp=`tempfile`
  echo "$bytes" > $tmp
  mv $tmp $file

  echo "$bytes"
}

while getopts "f:hm:np:rt:x:" opt
do
  case "$opt" in
    f)
      file="$OPTARG"
    ;;

    h)
      usage
      exit 0
    ;;

    m)
      min=$OPTARG
    ;;

    n)
      newline=
    ;;

    p)
      points=$OPTARG
    ;;

    r)
      rotate=n
    ;;

    t)
      theme="$OPTARG"
    ;;

    x)
      max=$OPTARG
    ;;
  esac
done

shift $[$OPTIND-1]

cmd="$@"

[ -z "$theme" ] && theme=$theme_default

if [ -z "$cmd" ]
then
  if [ -z "$file" ]
  then
    error "must specify file"
    usage
    exit 1
  fi
fi

if [ -z "$file" ]
then
  # we could go cryptic+safe by calling tempfile(1), but that then
  # makes it very difficult to find in case of need.
  file=/tmp/${USER}-${script_name}-$$.dat
fi

[ -z "$min" ]    && min=$min_default
[ -z "$max" ]    && max=$max_default
[ -z "$points" ] && points=$points_default

if [ ! -z "$cmd" ]
then
  if [ $rotate = n ]
  then
    error "cannot write to file if rotate disabled"
    usage
    exit 1
  fi

  eval "$cmd >>$file"
fi

data=$(get_data)

[ -z "$data" ] && printf "%*.s${newline}" $points && exit 0

for datum in $data
do
  byobu-ulevel -n -m $min -x $max -p -c $datum -t $theme
done

Anon7 - 2022
AnonSec Team