Clipinc.sh
Aus VDR Wiki
(Unterschied zwischen Versionen)
K (Zuordnung) |
(M) |
||
| (11 dazwischenliegende Versionen von 8 Benutzern werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
| − | + | Vorschlag für ein einfaches Skript um [[clipinc]] zu ''starten'', welches über die [[reccmds.conf]] ausgeführt werden kann. | |
| − | {{Box Datei | $PATH/clipinc.sh | | + | {{Box Datei | [[Struktur|$PATH]]/clipinc.sh | |
<pre> | <pre> | ||
#!/bin/sh | #!/bin/sh | ||
# | # | ||
# clipinc.sh | # clipinc.sh | ||
| − | |||
| − | |||
# | # | ||
# add this lines to your reccmds.conf: | # add this lines to your reccmds.conf: | ||
# folgende zeilen in die reccmds.conf eintragen: | # folgende zeilen in die reccmds.conf eintragen: | ||
# | # | ||
| − | # Run clipinc | + | # Run clipinc : /path_to_this_script/clipinc.sh -start |
| − | + | # Stop clipinc? : /path_to_this_script/clipinc.sh -kill | |
| − | # Stop clipinc? | + | |
# CONFIG START | # CONFIG START | ||
| − | |||
| − | |||
| − | |||
CLIPINC_LOGFILE="/var/log/vdr/clipinc.log" | CLIPINC_LOGFILE="/var/log/vdr/clipinc.log" | ||
# CONFIG END | # CONFIG END | ||
| − | + | which clipinc.pl >/dev/null 2>&1 || { echo clipinc.pl $"not found" ... ; exit 1 ; } | |
| − | case | + | case $1 in |
| − | + | -start) | |
| − | + | if [ -s "${PIDFILE:=$2/clipinc.pid}" ] ; then | |
| − | + | read PID < "$PIDFILE" | |
| − | if [ - | + | echo $"Clipinc process already active" "(pid: $PID)" ... |
| − | + | ||
else | else | ||
if [ -e "$2/recinfo.conf" ] ; then | if [ -e "$2/recinfo.conf" ] ; then | ||
| − | clipinc.pl "$2" | + | screen -dm sh -c \ |
| − | + | " \ | |
| − | + | clipinc.pl \"$2\" > \"$CLIPINC_LOGFILE\" 2>&1 & | |
| − | + | svdrpsend.pl -p ${VDR_PORT:-2001} MESG \""$"Clipinc process started"" (pid: \$!) ...\" ; \ | |
| − | + | echo \$! > \"$PIDFILE\" ; \ | |
| − | + | wait \$! ; \ | |
| − | + | rm -f \"$PIDFILE\" ; \ | |
| − | + | svdrpsend.pl -p ${VDR_PORT:-2001} MESG \""$"Clipinc process finished"" (pid: \$!) ...\" ; \ | |
| − | + | " | |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
else | else | ||
| − | + | echo $"recinfo.conf not found" ... | |
fi | fi | ||
| − | fi | + | fi |
| − | + | ||
| − | + | ||
;; | ;; | ||
| − | + | -kill) | |
| − | + | if [ -s "${PIDFILE:=$2/clipinc.pid}" ] ; then | |
| − | + | read PID < "$PIDFILE" | |
| + | if ps -p $PID >/dev/null 2>&1 ; then | ||
| + | kill -9 $PID | ||
| + | fi | ||
| + | rm -f "$PIDFILE" | ||
| + | fi | ||
;; | ;; | ||
esac | esac | ||
| + | |||
| + | exit $? | ||
</pre> | </pre> | ||
}} | }} | ||
| − | [[Kategorie: | + | ==Quellen== |
| + | * [[clipinc]] | ||
| + | |||
| + | [[Kategorie:Skripte]] | ||
Aktuelle Version vom 12. Juni 2006, 09:02 Uhr
Vorschlag für ein einfaches Skript um clipinc zu starten, welches über die reccmds.conf ausgeführt werden kann.
$PATH/clipinc.sh
#!/bin/sh
#
# clipinc.sh
#
# add this lines to your reccmds.conf:
# folgende zeilen in die reccmds.conf eintragen:
#
# Run clipinc : /path_to_this_script/clipinc.sh -start
# Stop clipinc? : /path_to_this_script/clipinc.sh -kill
# CONFIG START
CLIPINC_LOGFILE="/var/log/vdr/clipinc.log"
# CONFIG END
which clipinc.pl >/dev/null 2>&1 || { echo clipinc.pl $"not found" ... ; exit 1 ; }
case $1 in
-start)
if [ -s "${PIDFILE:=$2/clipinc.pid}" ] ; then
read PID < "$PIDFILE"
echo $"Clipinc process already active" "(pid: $PID)" ...
else
if [ -e "$2/recinfo.conf" ] ; then
screen -dm sh -c \
" \
clipinc.pl \"$2\" > \"$CLIPINC_LOGFILE\" 2>&1 &
svdrpsend.pl -p ${VDR_PORT:-2001} MESG \""$"Clipinc process started"" (pid: \$!) ...\" ; \
echo \$! > \"$PIDFILE\" ; \
wait \$! ; \
rm -f \"$PIDFILE\" ; \
svdrpsend.pl -p ${VDR_PORT:-2001} MESG \""$"Clipinc process finished"" (pid: \$!) ...\" ; \
"
else
echo $"recinfo.conf not found" ...
fi
fi
;;
-kill)
if [ -s "${PIDFILE:=$2/clipinc.pid}" ] ; then
read PID < "$PIDFILE"
if ps -p $PID >/dev/null 2>&1 ; then
kill -9 $PID
fi
rm -f "$PIDFILE"
fi
;;
esac
exit $?