This file is indexed.

/usr/bin/pmie2col is in pcp 3.8.12ubuntu1.

This file is owned by root:root, with mode 0o755.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
#!/bin/sh
#
# A crude ascii reporting tool, convert pmie to column output
#
# The pmie rules need to be of the form:
# load_1 = kernel.all.load #'1 minute';
# idle = kernel.all.cpu.idle;
# column_name=some other expression;
# ...
#
# Each pmie expression has to produce a singular value.
#
# With timestamps (pmie -e or pmie output from a PCP archive), lines look like
#	metric (Tue Feb 13 05:01:19 2001): value
#       load_1 (Tue Dec 23 12:20:45 2003): 0.24
# the first sed step in the filter sorts this out.
#
# First e-mailed to Patrick Aland <paland@stetson.edu> and pcp@oss.sgi.com
# on Wed, 24 Jan 2001.
#
 
# Get standard environment
. $PCP_DIR/etc/pcp.env

# For interactive use, works better with line buffered output from sed(1)
# and awk(1).
#
case "$PCP_PLATFORM"
in
    linux|mingw|kfreebsd)
	SED="sed -u"
	;;
    freebsd|darwin)
	SED="sed -l"
	;;
    *)
	SED=sed
	;;
esac

_usage()
{
    echo "Usage: pmie2col [-w width] [-d delimiter] [-p precision]"
    exit 1
}

pre=2	# floating point precision
wid=7	# reporting column width
delim=' '

while getopts "d:p:w:?" c
do
    case "$c"
    in
	w)
	    wid="$OPTARG"
	    ;;
	p)
	    pre="$OPTARG"
	    ;;
	d)
	    delim="$OPTARG"
	    ;;
	*)
	    _usage
	    ;;
    esac
done
shift `expr $OPTIND - 1`

if [ $# -ne 0 ]
then
    _usage
fi

# culled output at the start is produced by pmie and/or pmafm
$SED \
    -e '/^pmie: timezone set to/d' \
    -e '/^Note: running pmie serially, once per archive$/d' \
    -e '/^Host: [A-Za-z0-9]* Archive: /d' \
    -e '/^[^ ][^ ]* ([A-Z][a-z][a-z] [A-Z][a-z][a-z]  *[0-9][0-9]* [0-2][0-9]:[0-5][0-9]:[0-5][0-9] [0-9][0-9][0-9][0-9]): /{
s/ (/|/
s/): /|/
}' \
    -e '/^\([^ ][^ ]*\):/s//\1||/' \
| awk -F\| -v delim="$delim" '
NF == 0				{ if (state == 0) {
				    ncol = i
				    print ""
				  }
				  if (stamp != "") printf "%24s ",stamp
				  for (i = 0; i < ncol; i++) {
				    if (v[i] == "?")
					# no value
					printf "%s%'$wid'.'$wid's",delim,"?"
				    else if (v[i]+0 == v[i])
					# number
					printf "%s%'$wid'.'$pre'f",delim,v[i]
				    else
					# string
					printf "%s%'$wid'.'$wid's",delim,v[i]
				    v[i] = "?"
				  }
				  print ""
				  i = 0
				  stamp = ""
				  state = 1
				  next
				}
NF == 3 && stamp == ""		{ stamp = $2 }
state == 0			{ if (i == 0 && stamp != "") printf "%24s ",""
				  printf "%s%'$wid'.'$wid's",delim,$1 }
				{ v[i++] = $NF }'