File: mlhead

package info (click to toggle)
svtools 0.6-4
  • links: PTS
  • area: main
  • in suites: bullseye, sid
  • size: 172 kB
  • sloc: sh: 1,278; makefile: 174
file content (96 lines) | stat: -rwxr-xr-x 1,958 bytes parent folder | download
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
#!/bin/sh
#
# mlhead
# head frontend for multilog files
# Klaus Reimer <k@ailis.de>

TITLE=mlhead
VERSION=0.6
AUTHOR="Klaus Reimer"
EMAIL=k@ailis.de
COPYRIGHT="Copyright (C) 2000-2011 by $AUTHOR"

showHelp() {
  echo "Usage: $TITLE [OPTION]... SERVICE [CAT-OPTION]..."
  echo "head frontend for multilog files"
  echo ""
  echo "  -h, --help     Display help and exit"
  echo "  -V, --version  Display version and exit"
  echo ""
  echo "This utility is a frontend for head to easily head logfiles"
  echo "from services running under daemontools. Simply specify the service"
  echo "name (which is the name of the service directory without leading path)."
  echo "You can specify any head options after the service name. See the man"
  echo "page for head for more infos."
  echo ""
  echo "Report bugs to $AUTHOR <$EMAIL>"
}

showVersion() {
  echo "$TITLE $VERSION"
  echo ""
  echo "$COPYRIGHT"
  echo "This is free software; you can redistribute it and/or modify it under"
  echo "the terms of the GNU General Public License as published by the Free"
  echo "Software Foundation; either version 2 of the License, or (at your"
  echo "option) any later version."
}

while getopts "hV-:" NAME
do
  case "$NAME" in
    h)
      showHelp
      exit 0
      ;;
    V)
      showVersion
      exit 0
      ;;
    -)
      case "$OPTARG" in
        help)
          showHelp
          exit 0
          ;;
        version)
          showVersion
          exit 0
          ;;
        *)
          echo "Unknown option: $OPTARG"
          showHelp
          exit 1
      esac  
      ;;
    *)
      echo "Unknown option: $OPTARG"
      showHelp
      exit 1
  esac
done

shift `expr $OPTIND - 1`

if [ $# -eq 0 ]
then
  showHelp
  exit 1
fi

if ! SVDIR=`svdir 2>&1`
then
  echo "$TITLE: $SVDIR" >&2
  exit 1
fi

SERVICE=$1

svok $SVDIR/$SERVICE || exit 1
svok $SVDIR/$SERVICE/log || exit 1

shift 1

head $SVDIR/$SERVICE/log/main/current $* | tai64nlocal

exit 0