También puedes usar pkill patron o si quieres que case exactamente el nombre del proceso pkill -x nombre

On 14/04/15 07:46, Alberto José García Fumero wrote:
El mar, 14-04-2015 a las 13:58 +0200, mario raul rico escribió:
hola listeros, estoy implementando una función programada en el cron
que me chequee si un proceso esta en ejecución y si lo està lo mate,
la función es la siguiente:

if $(pgrep axel); then killall axel; fi

pero veo que me sale en los logs lo siguiente: /bin/sh: 1: 11713: not found

Alguna duda de lo que puede estar pasando?


Quizás te interese estudiar este script enviado por Alfredo Valles
(alfredo.val...@cigb.edu.cu Sat Jun 15 12:03:14 2002) a la antigua lista
linux-l (viva la arqueología!).

***********
Bueno, si te interesa te mando un scripcito que hice para matar procesos
por nombre (o por un pedacito del nombre), o sea te muestra los procesos
cuyo nombre machean con el patrón que tu le escribiste y te pregunta si
quieres matarlos.
Yo le puse "mata", asi que si quieres matar algun proceso cuyo nombre
contenga smb le dices:
$ mata smb
root         4  0.0  0.0     0    0 ?        SWN  Jun13   0:00
[smbd] ?
Te muestra la salida de la linea correspondiente al smbd en el formato
del `ps axu`,
Le dices 'y', <enter>  y te mata ese proceso. Si no quieres matarlo das
'n' y te sigue mostrando procesos que contengan smb en su nombre por si
quieres matarlos, o si das 'q' aborta.
($ mata -9 smb , si quieres que lo mate con la sennal -9)

Aqui va el scripcito (las criticas son bienvenidas, es la mejor forma de
aprender)
Ya una vez lo tire en linux-prog pero alli nadie me comento ninguna
posible mejora :-(

-------------------------------------------------------

#! /bin/bash

# mata: termina los procesos que machan con el patron

PATH=/bin:/usr/bin

case $1 in
"")  echo 'Usar: mata [-9] <patron>' 1>&2 ; exit 1 ;;
-*)  SIG=$1 ; shift ;;
esac

IFS='
'

for i in `ps axu | awk '/'$1'/&&(! match($0,"'$0'")) { print $0 }'`
do

    echo -n "$i ?"
    read respuesta

    case $respuesta in

    y*) `kill $SIG \`echo $i | awk '{ print $2 }'\`` ;;   #kill!!!

    q*) break ;;                                          #abortar

    esac

done





______________________________________________________________________
Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba.
Gutl-l@jovenclub.cu
https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l


--
Este mensaje ha sido analizado por MailScanner
en busca de virus y otros contenidos peligrosos,
y se considera que está limpio.

______________________________________________________________________
Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba.
Gutl-l@jovenclub.cu
https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l

Responder a