Cutinplace.sh

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(at != screen)
(M)
 
(4 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Skript für [[cutinplace]].
+
Vorschlag für ein einfaches Skript um [[cutinplace]] zu ''starten'', welches über die [[reccmds.conf]] ausgeführt werden kann.
  
 
{{Box Datei | [[Struktur|$PATH]]/cutinplace.sh |
 
{{Box Datei | [[Struktur|$PATH]]/cutinplace.sh |
Zeile 11: Zeile 11:
 
#
 
#
 
# cutinplace : /path_to_this_script/cutinplace.sh
 
# cutinplace : /path_to_this_script/cutinplace.sh
 +
 +
which cutinplace >/dev/null 2>&1 || { echo cutinplace $"not found" ... ; exit 1 ; }
  
 
MARKS=$(wc -l < "$1/marks.vdr" 2>/dev/null)
 
MARKS=$(wc -l < "$1/marks.vdr" 2>/dev/null)
Zeile 20: Zeile 22:
 
echo $"Cutinplace process already active" "(pid: $PID)" ...
 
echo $"Cutinplace process already active" "(pid: $PID)" ...
 
     else
 
     else
    if [ -s "${PIDFILE:=$1/cip.pid}" ] ; then
+
screen -dm sh -c \
read PID < "$PIDFILE"
+
echo $"Cutinplace process already active" "(pid: $PID)" ...
+
    else
+
screen -dmS $$ sh -c \
+
 
" \
 
" \
 
    cutinplace \"$1\" &
 
    cutinplace \"$1\" &
    $SVDRPSENDCMD MESG \""$"Cutinplace process started"" (pid: \$!) ...\" ; \
+
    svdrpsend.pl -p ${VDR_PORT:-2001} MESG \""$"Cutinplace process started"" (pid: \$!) ...\" ; \
 
    echo \$! > \"$PIDFILE\" ; \
 
    echo \$! > \"$PIDFILE\" ; \
 
    wait \$! ; \
 
    wait \$! ; \
 
    rm -f \"$PIDFILE\" ; \
 
    rm -f \"$PIDFILE\" ; \
    $SVDRPSENDCMD MESG \""$"Cutinplace process finished"" (pid: \$!) ...\" \
+
    svdrpsend.pl -p ${VDR_PORT:-2001} MESG \""$"Cutinplace process finished"" (pid: \$!) ...\" \
 
"
 
"
    fi
 
 
     fi
 
     fi
 
fi
 
fi
 
</pre>
 
</pre>
 
}}
 
}}
 +
 +
==Quellen==
 +
* [[cutinplace]]
  
 
[[Kategorie:Skripte]]
 
[[Kategorie:Skripte]]

Aktuelle Version vom 12. Juni 2006, 09:03 Uhr

Vorschlag für ein einfaches Skript um cutinplace zu starten, welches über die reccmds.conf ausgeführt werden kann.

Datei
$PATH/cutinplace.sh
#!/bin/sh
#
# cutinplace.sh
#
# add this line to your reccmds.conf:
# folgende zeile in die reccmds.conf eintragen:
#
# cutinplace : /path_to_this_script/cutinplace.sh

which cutinplace >/dev/null 2>&1 || { echo cutinplace $"not found" ... ; exit 1 ; }

MARKS=$(wc -l < "$1/marks.vdr" 2>/dev/null)
if [ ${MARKS:-0} -lt 2 ] ; then
    echo $"No editing marks defined" ...
else
    if [ -s "${PIDFILE:=$1/cip.pid}" ] ; then
	read PID < "$PIDFILE"
	echo $"Cutinplace process already active" "(pid: $PID)" ...
    else
	screen -dm sh -c \
	" \
	    cutinplace \"$1\" &
	    svdrpsend.pl -p ${VDR_PORT:-2001} MESG \""$"Cutinplace process started"" (pid: \$!) ...\" ; \
	    echo \$! > \"$PIDFILE\" ; \
	    wait \$! ; \
	    rm -f \"$PIDFILE\" ; \
	    svdrpsend.pl -p ${VDR_PORT:-2001} MESG \""$"Cutinplace process finished"" (pid: \$!) ...\" \
	"
    fi
fi


[Bearbeiten] Quellen