
/home/michael/client
stdoutを記録したいのですが、さまざまなテキストを含む行を削除したいです。これはどのように達成されますか?私が試したことは次のとおりです。ありがとう
SCRIPT=/home/michael/client
RUNAS=michael
PIDFILE=/var/run/client.pid
LOGFILE=/var/log/client.log
PROG="Client Interface"
start() {
if [ -f "$PIDFILE" ] && kill -0 $(cat "$PIDFILE"); then
echo "$PROG already running" >&2
return 1
fi
echo "Starting $PROG…" >&2
local CMD="$SCRIPT >&3 2>&1 & echo \$!"
#local CMD="$SCRIPT | grep -v 'Non-block' | grep -v 'Connecting with ssl...' >&3 2>&1 & echo \$!"
cd `dirname $SCRIPT`
su -c "$CMD" $RUNAS 3>>"$LOGFILE" >"$PIDFILE"
#su -c "$CMD" $RUNAS | grep -v "Non-block" | grep -v "Connecting with ssl..." 3>> "$LOGFILE" >"$PIDFILE"
#su -c "$CMD" $RUNAS 3>> grep -v "Non-block" | grep -v "Connecting with ssl..." | "$LOGFILE" >"$PIDFILE"
echo "$PROG started" >&2
}
答え1
「分裂して征服する」
タスクを完了するために単純なbashスクリプトを書くことはできますか?
それでは試してください。数
それでは試してください。北面
最後に、init.dスクリプトで実行してみてください。