⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 poff

📁 一个在LINUX下运行的东西
💻
字号:
#!/bin/sh# $Id: poff,v 1.8 1999/08/28 16:34:51 phil Exp $# Written by John Hasler <john@dhh.gt.org> and based on work # by Phil Hands <phil@hands.com>.  Distributed under the GNU GPLif [ -x /usr/bin/kill ]; then  KILL="/usr/bin/kill"else  KILL="/bin/kill"fiSIG=TERMDONE="stopped"MODE=""usage (){   cat <<!EOF!usage: $0 [option] [provider]options:  -r        Cause pppd to drop the line and redial.  -d        Toggle the state of pppd's debug option.  -c        Cause pppd to renegotiate compression.  -a        Stop all pppd's.  'provider' will be ignored.  -h        Print this help summary and exit.  -v        Print version and exit.  none      Stop pppd.Options may not be combined.If 'provider' is omitted pppd will be stopped or signalled if and only ifthere is exactly one running unless the '-a' option was given.  If'provider' is supplied the pppd controlling the connection to thatprovider will be stopped or signalled.!EOF!}# Get option.  If there are none replace the "?" that getopts puts in# FLAG on error with "null".getopts rdcavh FLAGif [ "$?" -ne 0 ]; then    FLAG="null"fi# Check for additional options.  Should be none.getopts :rdcavh DUMMYif [ "$?" -eq 0 ]; then    echo "$0: Illegal option -- ${OPTARG}."    exit 1ficase $FLAG in "r") SIG=HUP;  DONE=signalled; shift ;; "d") SIG=USR1; DONE=signalled; shift ;; "c") SIG=USR2; DONE=signalled; shift ;; "a") MODE="all"; shift ;; "v") echo "$0$Revision: 1.8 $_TrickToPrint_RCS_Revision"; exit 0 ;; "h") usage; exit 0 ;; "?") exit 1;esac# Get the PIDs of all the pppds running.  Could also get these from# /var/run, but pppd doesn't create .pid files until ppp is up.PIDS=$(pidof pppd)# poff is pointless if pppd isn't running.if [ -z "$PIDS" ]; then    echo "$0: No pppd is running.  None ${DONE}."    exit 1fi# Find out how many pppd's are running.N=$(echo "$PIDS" | wc -w)# If there are no arguments we can't do anything if there is more than one# pppd running.if [ "$#" -eq 0 -a "$N" -gt 1 -a $FLAG != "a" ]; then    echo "$0: More than one pppd running and no "-a" option and no arguments supplied. Nothing ${DONE}."    exit 1fi# If either there are no arguments or '-a' was specified kill all the# pppd's.if [ "$#" -eq 0 -o "$MODE" = "all" ]; then    $KILL -$SIG $PIDS || {        echo "$0: $KILL failed.  None ${DONE}."        exit 1    }    exit 0fi# There is an argument, so kill the pppd started on that provider.PEER=$(echo $1 | sed -e 's#/#\\/#g')PID=$(ps -o pid,cmd axw | awk "/^ *[0-9]* *(\/usr\/sbin\/)?pppd call $PEER( |\$)/ {print \$1}")if [ "$PID" ]; then    $KILL -$SIG $PID || {        echo "$0: $KILL failed.  None ${DONE}."        exit 1    }else   echo "$0: I could not find a pppd process for provider '$1'. None ${DONE}."   exit 1fiexit 0

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -