Este es el comando suck que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.
PROGRAMA:
NOMBRE
suck: extrae un pequeño suministro de noticias de un servidor NNTP, evitando el comando NEWNEWS.
SINOPSIS
chupar [nombre de host] [ @Nombre del archivo ] [ -V ] [ -K ] [ -L [SL] ] [ -LF nombre del archivo ] [ -H ] [ -AF
nombre del archivo ] [ -d [tmd] dirname] [ -s | -S nombre del archivo ] [ -e | -E nombre del archivo ] [ -a ] [ -m ] [
-b [irlf] archivo por lotes ] [ -r tamaño del archivo ] [ -p extensión] [ -U userid] [ -P contraseña ] [ -Q ]
[ -c ] [ -M ] [ -N número de puerto ] [ -W pause_time pause_nr_msgs] [ -w tiempo de pausa
pause_nr_msgs] [ -l archivo_frase] [ -D ] [ -R ] [ -q ] [ -C contar ] [ -k ] [ -A ] [ -ALABAMA
activefile] [ -hl localhost] [ -pb ] [ -T se acabó el tiempo ] [ -n ] [ -u ] [ -z ] [ -x ] [ -B ] [
-O ] [ -G ] [ -X ] [ -f ] [ -y post_filter] [ -F ] [ -g ] [ -i number_to_read] [ -Z ] [
-rc ] [ -lr ] [ -sg ] [ -ssl ] [ -SSL ]
Opciones válidas en todos los modos tname
El nombre de host puede incluir opcionalmente el número de puerto, en la forma
Puerto host.Ifeste vídeo opciónisusado,cualquierPuertonúmeroespecificado a través de la opción -N se ignora.
@Nombre del archivo
Esta opción le dice a suck que lea otras opciones de un archivo además de la línea de comandos.
-a
Esta opción obliga a suck a agrupar siempre los artículos descargados, incluso si suck aborta
por alguna razon. Sin esta opción, suck solo agrupará los artículos si termina
correctamente o se cancela mediante una señal (ver más abajo).
-A
Esta opción le dice a suck que escanee el localhost (especificado con la opción -hl) y use su
archivo activo para construir y actualizar el archivo sucknewsrc. Si agrega un grupo a su servidor local,
suck lo agregará a sucknewsrc y descargará artículos. O, si elimina un grupo de su
servidor local, se eliminará de sucknewsrc. Si no se permite publicar en un
grupo en particular, entonces la línea en sucknewsrc se acaba de comentar. Con esta opción,
nunca debería tener que editar su archivo sucknewsrc. En caso de que tenga grupos de noticias (como control
y basura) que no desea descargar, puede poner estos grupos de noticias en un archivo "activo-
ignore ", uno por línea, y suck ignorará estos grupos de noticias cuando escanee el localhost.
Si su sistema admite regex (), puede usar expresiones regulares en el archivo active-ignore
para omitir varios grupos, por ejemplo: fred. *. Si usa la opción -p (sufijo), suck comprobará
por la existencia de un archivo de ignorar activo con sufijo. Si eso no existe, entonces
suck comprobará la existencia del archivo sin el sufijo.
NOTA: Si el host local está en un puerto no estándar, el número de puerto puede especificarse como parte
del nombre de host, en la forma Puerto host.
NOTA: Si usa expresiones regulares, suck agregará silenciosamente un "^" al comienzo de la
nombre del grupo y un "$" al final del nombre del grupo si aún no están presentes, de modo que
si tiene "comp.os.linux", no coincidirá con "comp.os.linux.answers" o si tiene
"alt.test" no coincide con "comp.alt.test".
-AL archivo activo
Esta opción es idéntica a la opción -A, excepto que lee el archivo activo de la
archivo especificado en lugar de leerlo desde el host local. Todas las advertencias de la -A
La opción se aplica también a esta opción. Si ambas opciones se usan en la línea de comando, chupa
Primero intenta usar la opción -A, luego, si falla, usa esta opción.
-B
Esta opción le dice a suck que intente agrupar cualquier artículo en su directorio ANTES
comenzando a descargar mensajes. Esto puede resultar útil si tiene algún problema con el
descargar. Esta opción solo funcionará si especifica una opción por lotes (ver más abajo). Si
no hay mensajes para agrupar, algunas de las opciones de lote pueden producir mensajes de advertencia.
Pueden ignorarse con seguridad. Además, si los archivos por lotes existen al final de la ejecución, en
modo por lotes, se sobrescribirá, ya que el nuevo archivo por lotes contendrá todos los mensajes.
En el modo rnews, si el archivo por lotes existe, se abortará y no agrupará ningún mensaje.
-c
Si se especifica esta opción, suck limpiará después de sí mismo. Esto incluye:
1. Mover sucknewsrc a sucknewsrc.old
2. Mover suck.newrc a sucknewsrc
3. rm suck.sorted y suckothermsgs.
-C cuenta
Esta opción le dice a suck que cancele la conexión y la vuelva a abrir cada número de conteo de
artículos. Esto está diseñado para luchar contra la opción LIKE_PULLERS = DONT de INN, que algunas personas
compilar. Con LIKE_PULLERS = DONT, después de 100 mensajes, INN se detendrá entre cada
mensaje, reduciendo drásticamente la velocidad de descarga. No recomiendo el uso de esto, pero
si no tienes otra opción ...
-dd nombredir
-dm nombre de directorio
-dt nombre de directorio
Especifique la ubicación de los distintos archivos utilizados por suck.
-dd dirname = directorio de archivos de datos utilizados por suck (sucknewsrc suckkillfile suckothermsgs
activo-ignorar sucknodownload)
-dm dirname = directorio para el almacenamiento de artículos creados en modo Multifile o modo por lotes.
NO haga que este sea el mismo que los directorios utilizados para las opciones -dt o -d, o lo hará
perderá todos sus archivos de configuración.
-dt dirname = directorio de archivos temporales creados por suck (suck.newrc, suck.sort,
suck.restart, suck.killlog, suck.post).
-D
Esta opción le dice a suck que registre varios mensajes de depuración en "debug.suck", principalmente para
uso por parte del mantenedor.
-e | -E nombre de archivo
Estas opciones enviarán todos los mensajes de error (normalmente mostrados en stderr), a una alternativa
expediente. La versión en minúsculas, -e, enviará los mensajes de error al valor predeterminado compilado
definido en suck_config.h. El valor predeterminado es suck.errlog. La versión en mayúsculas, -E,
requiere el parámetro de nombre de archivo. Todos los mensajes de error se enviarán a este archivo.
-f
Esta opción le dice a suck que se vuelva a conectar después de deducir y antes de descargar los artículos.
Esto es en caso de que los tiempos de deduplicación prolongados provoquen tiempos de espera en el extremo remoto.
-F
Esta opción le dice a suck que se vuelva a conectar después de leer el archivo activo local y antes
descargando los Msg-ID. Esto es en el caso de un archivo activo de gran tamaño, lo que provoca tiempos de espera en
el extremo remoto.
-g
Esta opción hace que suck solo descargue los encabezados de los artículos seleccionados. Como un
Como resultado de esto, se omite cualquier lote de artículos. Esta opción funciona con
killfiles, sin embargo, las opciones de killfile como BODYSIZE> serán ignoradas, ya que el cuerpo de
el artículo nunca se descargará.
-G
Esta opcin hace que suck muestre el recuento de mensajes y las lneas de estado de BPS en un
formato diferente, más adecuado para su uso por un programa de filtro (como una GUI).
-H
Esta opción hará que suck omita la verificación del historial.
-HF nombre_archivo_histórico
Esta opción le dice a suck la ubicación del archivo histórico. El valor predeterminado es en
/ usr / news / db / history.
-hl servidor local
Esta opción especifica el nombre del host local. Esta opción es necesaria tanto con -A como con
la opción -bp.
-i número_para_leer
Esta opción le dice a suck la cantidad de artículos para descargar si está usando -A o -AL
opción y se agrega un nuevo grupo. El valor predeterminado está definido en suck_config.h
(ACTIVE_DEFAULT_LASTREAD, actualmente -100). NOTA: Debe ser un número negativo (p. Ej.
-100, -50) o 0, para descargar todos los artículos disponibles actualmente en el grupo.
-k
Esta opción le dice a suck que NO adjunte el sufijo de la opción -p a los nombres de los
killfiles, tanto el killfile maestro como cualquier archivo de grupo. Esto le permite mantener uno
conjunto de killfiles para varios servidores.
-K
Esta opción hará que suck omita la verificación de los archivos de eliminación.
-l archivo_frase
Esta opción le dice a suck que cargue en un archivo de frase alternativo, en lugar de usar el
mensajes. Esto le permite tener frases de succión impresa en otro idioma, o permitirle
para personalizar los mensajes sin volver a construir suck. Vea abajo.
-lr
Esta opción, se utiliza junto con la opción de artículo más alto en el sucknewsrc, para
descargue los artículos más antiguos, viceversa, los artículos más nuevos. Consulte esa sección para obtener más detalles.
-L
Esta opción le dice a suck que NO registre artículos eliminados en suck.killlog.
-LF nombre de archivo
Esta opción le permite anular el valor predeterminado incorporado de "suck.killlog" para el archivo.
que contiene las entradas de registro de los artículos eliminados.
-LL
Esta opción le dice a suck que cree entradas de registro largas para cada artículo eliminado. La entrada larga
contiene la entrada de registro breve y el encabezado del mensaje eliminado.
-LS
Esta opción le dice a suck que cree entradas de registro cortas para cada artículo eliminado. El corto
La entrada contiene qué grupo y qué patrón coincidió, así como el MsgID del
artículo muerto.
-M
Esta opción le dice a suck que envíe el comando "lector de modo" al servidor remoto. Si lo consigues
un mensaje de comando no válido inmediatamente después del anuncio de bienvenida, intente esto
.
-n
Esta opción le dice a suck que use el número de artículo y viceversa, MsgId para recuperar los artículos.
Esta opción supuestamente es menos severa en el servidor remoto. También puede eliminar problemas
si su ISP envejece los artículos rápidamente y con frecuencia obtiene errores de "artículo no encontrado".
Además, si su ISP usa DNEWS, es posible que necesite esta opción para que sepa que está leyendo
artículos en un grupo.
-N número_puerto
Esta opción le dice a suck que use un número de puerto NNRP alternativo cuando se conecte al host,
en lugar del predeterminado, 119.
-O
Esta opción le dice a suck que se salte el primer artículo al reiniciar. Esto se usa siempre que
hay un problema con un artículo en el servidor remoto. Por algunas razones, algunos NNTP
servidores, cuando tienen un problema con un artículo en particular, se agota el tiempo de espera. Sin embargo, cuando tu
reiniciar, está de vuelta en el mismo artículo y se agota el tiempo de nuevo. Esta opción le dice a chupar
para omitir el primer artículo al reiniciar, de modo que pueda obtener el resto de los artículos.
-p extensión
Esta extensión se agrega a todos los archivos para que pueda tener múltiples feeds de sitios. Para
ejemplo, si especifica -p .dummy, suck busca sucknewsrc.dummy,
suckkillfile.dummy, etc., y crea sus archivos temporales con la misma extensión. Esta voluntad
le permite mantener varios archivos sucknewsrc, uno para cada sitio.
-q
Esta opción le dice a suck que no muestre los mensajes de BPS y de recuento de artículos durante la descarga.
Útil cuando se ejecuta suck sin supervisión, como desde un crontab.
-R
Esta opción le dice a suck que omita una nueva exploración del nuevo servidor remoto al reiniciar. El
predeterminado es volver a escanear el servidor nuevo en busca de artículos nuevos siempre que se ejecute suck, incluyendo
reinicia.
-rc
Esta opción le dice a suck que cambie su comportamiento cuando el servidor remoto reinicia su artículo
contadores. El comportamiento predeterminado es restablecer lastread en sucknewsrc a la actual
contador de artículos alto. Con esta opción, suck restablece la última secuencia en sucknewsrc al
contador de artículos bajo actual, lo que hace que absorba todos los artículos del grupo y utilice el
rutinas historydb para deduplicar artículos existentes.
-s | -S nombre de archivo
Estas opciones enviarán todos los mensajes de estado (normalmente mostrados en stdout), a un
archivo alternativo. La versión en minúscula, -s, enviará los mensajes de estado al
compilado en predeterminado definido en suck_config.h. El valor predeterminado es / dev / null, por lo que no hay estado
Se mostrarán los mensajes. La versión en mayúsculas, -S, requiere el parámetro de nombre de archivo.
Todos los mensajes de estado se enviarán a este archivo.
-sg
Esta opción le dice a suck que agregue el nombre del grupo actual que se está descargando, si se conoce, a
la pantalla BPS. Normalmente, la única vez que suck no sabe el nombre del grupo es si un
El artículo se descarga a través del archivo suckothermsgs.
-ssl
Esta opción le dice a suck que use SSL para hablar con el servidor remoto, si suck fue compilado con
Soporte SSL.
-SSL
Esta opción le dice a suck que use SSL para hablar con el servidor local, si suck fue compilado con
Soporte SSL.
-T tiempo de espera
Esta opción anula el valor de TIMEOUT compilado. Este es el tiempo que suck espera por datos
desde el host remoto antes de que se agote el tiempo de espera y se cancele. El valor del tiempo de espera está en segundos.
-u
Esta opción le dice a suck que envíe el comando AUTHINFO USER inmediatamente después de conectarse al
servidor remoto, en lugar de esperar una solicitud de autorización. Debes suministrar la -U
y -P opciones cuando usa esta opción.
-U ID de usuario
-P contraseña
Estas dos opciones le permiten especificar un ID de usuario y una contraseña, si su servidor NNTP requiere
.
-Q
Esta opción le dice a suck que obtenga el ID de usuario y la contraseña para la autenticación NNTP del
variables de entorno "NNTP_USER" y "NNTP_PASS" viceversa la contraseña -U o -P. Esta
previene un posible problema de seguridad en el que alguien que realiza un comando ps puede ver su ID de usuario
y contraseña.
-V
Esta opción hará que suck imprima el número de versión y luego salga.
-w temporizador_pausa pause_nr_msgs
Esta opción le permite ralentizar la succión mientras tira de los artículos. Si mandas chupar un
señal predefinida (predeterminado SIGUSR1, ver suck_config.h), suck cambiará la pausa predeterminada
opciones (si lo especifica la opción -W), con los valores de esta opción. Por ejemplo,
ejecutas suck con -w 2 2, y envías suck a SIGUSR1 (usando kill), suck hará una pausa 2
segundos entre cada dos mensajes, lo que permite al servidor "recuperar el aliento". Si tu
enviar suck otro SIGUSR1, luego suck devolverá las opciones de pausa predeterminadas. Si no hay pausa
Las opciones se especificaron en la línea de comando (omitió -W), luego suck volverá a la
tirón de velocidad completa predeterminado.
-W pausa_tiempo pausa_nr_msgs
Esta opción le dice a suck que haga una pausa entre la descarga de artículos. Necesita especificar cómo
tiempo para hacer una pausa (en segundos) y con qué frecuencia hacer una pausa (cada X nr de artículos). Ej .: -W 10
haría que la succión se detuviera durante 10 segundos cada 100 artículos. ¿Por qué querrías hacer
¿esta? Suck puede causar cargas pesadas en un servidor remoto, y esta pausa permite que el servidor
"recupera el aliento".
-x
Esta opción le dice a suck que no verifique los ID de mensaje para el carácter final>. Esta
La opción es para servidores NNTP con muerte cerebral que truncan la información XHDR en 72 caracteres.
-X
Esta opción le dice a suck que omita los killfiles de XOVER.
-y post_filtro
Esta opción solo es válida cuando se utiliza cualquiera de los modos por lotes. Te permite editar cualquiera o todos
de los artículos descargados antes de publicarlos en el servidor local. Consulte a continuación para obtener más detalles.
-z
Esta opción le dice a suck que omita el proceso normal de deduplicación. Esto es principalmente para lentos
máquinas en las que la deduplicación lleva más tiempo que la descarga de mensajes. No
recomendado.
-Z
Esta opción le dice a suck que use el comando XOVER y viceversa, el comando XHDR para recuperar el
información necesaria para descargar artículos. Use esto si su servidor de noticias remoto no lo hace
admite el comando XHDR.
LARGO OPCIÓN EQUIVALENTES
-a --siempre_batch
-bi - posada-por lotes
-br --batch_rnoticias
-bl --batch_lmover
-bf --batch_innfeed
-pb --batch_post
-c --limpiar
-dt --dir_temp
-dd --dir_datos
-dm --dir_msgs
-e --def_error_log
-f --reconectar_dupe
-g --header_only
-h --anfitrión
-hl --hostlocal
-k --kill_no_postfix
-l --archivo_idioma
-lr --low_read
-m --multiarchivo
-n --modo_número
-p --postfijo
-q - silencioso
-r --rtamaño_noticias
-rc --reset contador
-s --def_status_log
-sg --mostrar_grupo
-ssl --use_ssl
-w --señal_espera
-x --no_chk_msgid
-y --post_filtro
-z --no_dupe
-A --activo
-AL --read_active
-B - pre-lote
-C - reconectar
-D - depuración
-E --registro_error
-G --use_gui
-H --no_historia
-HF --archivo_histórico
-K --archivo de eliminación
-L --kill_log_none
-LS --kill_log_short
-LL --kill_log_largo
-M --modo_lector
-N --portnr
-O --skip_on_restart
-P - contraseña
-Q --contraseña_env
-R --no_rescan
-S --status_log
-SSL --local_use_ssl
-T --tiempo de espera
-U - ID de usuario
-V --versión
-W --espera
-X --no_xover
-Z --use_xover
DESCRIPCIÓN
MODO 1 - stdout modo
%chupar
% chupar myhost.com
Suck toma noticias de un servidor NNTP y envía los artículos a stdout. Suck acepta como
argumento el nombre de un servidor NNTP o si no da un argumento tomará el
variable de entorno NNTPSERVER. Puede redirigir los artículos a un archivo o comprimirlos.
sobre la marcha como "chupar server.domain | gzip -9> output.gz". Ahora depende de ti lo que tu
hacer con los artículos. Tal vez ya tenga la salida en su máquina local porque
utilizó una línea de deslizamiento o todavía tiene que transferir la salida a su máquina local.
MODO 2 - Multiarchivo modo
% chupar -m
% chupar myhost.com -m
Suck toma noticias de un servidor NNTP y almacena cada artículo en un archivo separado. Ellos son
almacenado en el directorio especificado en suck_config.ho por la opción de línea de comando -dm.
MODO 3 - Lote modo
% suck myhost.com -b [irlf] archivo por lotes
o% chupar myhost.com -bp -hl localhost
o% suck myhost.com -bP NR -hl localhost
% suck myhost.com -b [irlf] archivo por lotes
Suck tomará artículos de noticias de un servidor NNTP y los almacenará en archivos, uno para cada
artículo (modo multifile). La ubicación de los archivos se basa en las definiciones en
suck_config.hy la línea de comando -dm. Una vez que haya terminado de descargar los artículos,
construirá un archivo por lotes que puede ser procesado por innxmit o rnews, o llamará
lmove para poner los archivos directamente en el formato de noticias / grupo / número.
-bi: crea un archivo por lotes para innxmit. Los artículos se dejan intactos y se crea un archivo por lotes.
construido con una lista única de la ruta completa de cada artículo. Entonces innxmit se puede llamar:
% innxmit archivo por lotes localhost
-bl - suck llamará a lmove para poner los artículos en formato news / group / number. Debes
proporcione el nombre del archivo de configuración en la línea de comando. Los siguientes argumentos
de suck se pasan a lmove:
El nombre del archivo de configuración (el nombre del archivo por lotes proporcionado con esta opción)
El directorio especificado para los artículos (-dm o predeterminado integrado).
El registro de errores para registrar errores en (-e o -E), si se proporciona en la línea de comando.
El archivo de frases (-l), si se proporciona en la línea de comando.
La opción Depurar, si se proporciona en la línea de comandos.
-br: crea un archivo por lotes para rnews. Los artículos se concatenan juntos, con el
#! rnews separador de artículos por tamaño. Esto se puede alimentar a rnews:
% rnews -S archivo por lotes localhost
-r especifica el tamaño máximo de archivo por lotes para rnews. Esta opción le permite especificar
el tamaño máximo de un archivo por lotes que se alimentará a rnews. Cuando se alcanza este límite, un nuevo
El archivo por lotes se crea DESPUÉS de que termine de escribir el artículo actual en el archivo por lotes anterior.
El segundo y los sucesivos archivos por lotes obtienen un número de secuencia de 1 arriba adjunto al nombre del archivo
especificado con el -br. Tenga en cuenta que, dado que tengo que terminar de escribir el artículo actual
después de alcanzar el límite, el tamaño máximo de archivo es solo aproximado.
-bf: crea un archivo por lotes para innfeed. Este archivo por lotes contiene el MsgID y la ruta completa de
cada artículo. La principal diferencia entre esta y la opción innxmit es que innfeed
El archivo se crea a medida que se descargan los artículos, de modo que innfeed pueda publicar los artículos,
incluso mientras se descargan más artículos.
-bp: esta opción le dice a suck que cree un archivo por lotes y publique los artículos en ese
batchfile al localhost (especificado con la opción -hl). Esta opción utiliza el IHAVE
comando para publicar todos los artículos descargados en el servidor local. El archivo por lotes se llama
suck.post y se coloca en el directorio temporal (-dt). Se elimina al finalizar, como
son los artículos publicados con éxito. Si el servidor no quiere el artículo (normalmente
porque ya existe en el servidor o es demasiado antiguo), el artículo también se elimina.
Si ocurren otros errores, el artículo NO se elimina. Con la siguiente línea de comando,
puede descargar y publicar artículos sin preocuparse si está utilizando INND o CNEWS.
% suck news.server.com -bp -hl localhost -A -c
-bP NR: esta opción funciona de manera idéntica a -bp anterior, excepto que en lugar de esperar hasta que todos
se descargan los artículos, los publicará en el servidor local después de descargar NR de
artículos.
% suck news.server.com -bP 100 -hl localhost -A -c
CHUPAR ARGUMENTO ARCHIVO
Si especifica @filename en la línea de comando, suck leerá el nombre del archivo y lo analizará
para cualquier argumento que desee pasar a chupar. Especifica los mismos argumentos en este
archivo como lo hace en la línea de comando. Los argumentos pueden estar en una línea o esparcirse entre
más de una línea. También puede utilizar comentarios. Los comentarios comienzan con '#' y van hasta el final
de una línea. Todos los argumentos de la línea de comando anulan los argumentos del archivo.
# Archivo de argumento de muestra
-bi batch # opción de archivo por lotes
-M # opción de lector de modo de uso
SUCKNEWSRC
Chupa busca un archivo chuparnoticiasrc para ver qué artículos quieres y cuáles ya
recibió. El formato de sucknewsrc es muy simple. Consiste en una línea para cada
grupo de noticias. La línea contiene dos o tres campos.
El primer campo es el nombre del grupo.
El segundo campo es el número de artículo más alto que estaba en el grupo cuando ese grupo fue
descargado por última vez.
El tercer campo, que es opcional, limita el número de artículos que se pueden descargar.
en cualquier momento dado. Si hay más artículos que este número, solo los más nuevos son
descargado. Si el tercer campo es 0, no se descargan mensajes nuevos. Si el comando
se especifica la opción de línea -lr, en lugar de descargar los artículos más nuevos, suck
en su lugar, descargue los artículos más antiguos.
Los campos están separados por un espacio.
comp.os.linux.announce 1 [100]
Cuando finaliza suck, crea el archivo suck.newrc que contiene el nuevo sucknewsrc
con los números de artículo actualizados.
Para agregar un nuevo grupo de noticias, simplemente péguelo en sucknewsrc, con un número de artículo más alto de -1
(o cualquier número menor que 0). Suck recibirá el número X de mensajes más reciente para ese
grupo de noticias. Por ejemplo, un -100 causaría problemas para descargar los 100 artículos más recientes para
ese grupo de noticias.
Para decirle a suck que se salte un grupo de noticias, coloque un # como primer carácter de una línea.
ARCHIVO SUCKKILL y SUCKXOVER
Hay dos tipos de killfiles compatibles con suck. El primero, a través del archivo suckkillfile,
elimina artículos basándose en la información del encabezado o cuerpo del artículo real. El segundo,
a través del archivo suckxover, mata artículos basados en la información recuperada a través del NNTP
comando XOVER. Se implementan de dos formas fundamentalmente diferentes. El
La eliminación de suckkillfile se realiza a medida que se descargan los artículos, uno a la vez. El XOVER
la matanza se realiza mientras suck obtiene la lista de artículos para descargar, y antes de una
se descarga un solo artículo. Puede utilizar cualquiera, ninguno o ambos tipos de killfiles.
ARCHIVO SUCKKILL y MANTENER / KILLFILES
If chupararchivo existe, los encabezados de todos los artículos se escanearán y el artículo
descargado o no, según los parámetros de los archivos. Si no hay ninguna opción de registro
especificado (vea las opciones -L arriba), entonces se usa la opción de registro largo.
Se permiten líneas de comentarios en los killfiles. Una línea de comentario tiene un "#" en el primer
posición. Todo lo que aparece en una línea de comentarios se ignora.
Así es como funciona todo el paquete de conservación / eliminación. Todos los artículos se cotejan con
archivo master kill (suckkillfile). Si un artículo no es eliminado por el archivo master kill,
luego se analiza su línea de grupo. Si existe un archivo de grupo para uno de los grupos, entonces el
El artículo se compara con ese archivo de grupo. Si coincide con un archivo de conservación, se conserva,
de lo contrario, se marca para su eliminación. Si coincide con un archivo de eliminación, se marca para
eliminación, de lo contrario se mantiene. Esto se hace para cada grupo en la línea de grupo.
NOTAS: Con la excepción del parámetro USE_EXTENDED_REGEX, ninguno de estos parámetros
se pasan del archivo de eliminación maestro al archivo de grupo individual. Cada killfile es
separado e independiente. Además, cada búsqueda no distingue entre mayúsculas y minúsculas a menos que específicamente
especificado comenzando la cadena de búsqueda con el carácter QUOTE (ver más abajo). Sin embargo,
la parte del parámetro de la expresión de búsqueda (la parte LOWLINE =, HILINE =) es case
sensible.
PARÁMETROS
LÍNEAS BAJAS = #######
HILINES = #######
NRGRPS = ####
NRXREF = ####
CITA = c
NON_REGEX = c
GRUPO = mantener nombre de grupo nombre de archivo O GRUPO = eliminar nombre de grupo nombre de archivo
PROGRAMA = nombre de ruta
PERL = nombre de ruta
TIEBREAKER_DELETE
GROUP_OVERRIDE_MASTER
USE_EXTENDED_REGEX
XOVER_LOG_LONG
ENCABEZAMIENTO:
Cualquier línea de encabezado válida:
CUERPO:
TAMAÑO DEL CUERPO>
TAMAÑO CORPORAL
Todos los parámetros son válidos tanto en el archivo master kill como en los archivos de grupo, con la
excepción de GROUP, PROGRAM, PERL, TIEBREAKER_DELETE y GROUP_OVERRIDE_MASTER. Estos
solo son válidos en el archivo master kill.
MATAR / MANTENER Archivos Parámetros
HILINES = Coincidir con cualquier artículo más largo que el número de líneas especificado.
LÍNEAS BAJAS = Coincidir con cualquier artículo más corto que el número de líneas especificado.
NRGRPS = Esta línea coincidirá con cualquier artículo que tenga más grupos que el número especificado
en los grupos de noticias: línea. Por lo general, esto se usa en un archivo de eliminación para evitar el spam.
artículos. (Un artículo enviado por correo no deseado es aquel que se publica en muchos grupos, como los
planes para hacerse rico rápidamente, etc.)
NRXREF = Esta línea coincidirá con cualquier artículo que tenga más grupos que el número
especificado en la línea Xref :. Este es otro tapón de spamm. ADVERTENCIA: la línea Xref: es
no es tan precisa como la línea Newsgroups:, ya que solo contiene grupos conocidos en las noticias
servidor. Esta opción es más útil en un killfile xover, ya que en Xoverviews no
normalmente proporciona la línea Newsgroups:, pero proporciona la línea Xref :.
ENCABEZAMIENTO: Año Válido Encabezamiento Línea: Suck le permite escanear cualquier línea de encabezado para una
patrón / cadena en particular, o puede escanear todo el encabezado del artículo. Para escanear un
línea individual, simplemente especifíquela, por ejemplo, para escanear la línea Desde para boby@pixi.com,
pondría
Desde:boby@pixi.com
Tenga en cuenta que la línea del encabezado coincide EXACTAMENTE con el contenido del artículo. Para escanear el
Seguimiento a: línea, simplemente coloque Para buscar en la misma línea de encabezado varios elementos de búsqueda,
luego, cada elemento de búsqueda debe estar en una línea separada, por ejemplo:
De: boby @ xxx
De: nerd @ yyy
Asunto: chupar
Asunto: ayuda
El parámetro HEADER: es un caso especial de lo anterior. Si usa el parámetro HEADER :,
luego, se busca el artículo en todo el encabezado. Se le permiten varias líneas HEADER:
en cada killfile.
Cuando suck busca el patrón, solo busca lo que sigue a: y espacios
después de: son significativos. Con el ejemplo anterior "Asunto: chupar", buscaremos
la línea de encabezado del Asunto para la cadena "chupar". Si el ejemplo hubiera leído "Asunto: chupar",
chupar habría buscado la cadena "chupar". Tenga en cuenta el espacio extra.
Si su sistema tiene rutinas regex (), entonces los elementos buscados pueden ser POSIX
expresiones regulares, en lugar de solo cadenas. Tenga en cuenta que la opción QUOTE = sigue siendo
aplicado, incluso a expresiones regulares.
CUERPO: Este parámetro le permite buscar texto en el cuerpo de un artículo. De nuevo, si tu
el sistema tiene regex (), puede usar expresiones regulares, y la opción QUOTE = también es
aplicado. Se le permiten múltiples líneas BODY: en cada killfile. ADVERTENCIA: ciertas expresiones regulares
combinaciones, especialmente con. * al principio, (por ejemplo, BODY:. * jpg), en combinación con
artículos grandes, pueden hacer que el código de expresiones regulares consuma cantidades masivas de CPU, y parecerá que apesta
como si no estuviera haciendo nada.
TAMAÑO DEL CUERPO> Este parámetro coincidirá con un artículo si el tamaño de su cuerpo (sin incluir el
header) es mayor que este parámetro. El tamaño se especifica en bytes.
TAMAÑO CORPORAL Este parámetro coincidirá con un artículo si el tamaño de su cuerpo es menor que este
parámetro. El tamaño se especifica en bytes.
COTIZAR = Este elemento especifica el carácter que define una cadena entre comillas. El predeterminado para
esto es un ". Si un elemento comienza con el carácter de CITA, entonces el elemento se verifica como está
(caso significativo). Si un elemento no comienza con el carácter de CITA, entonces el elemento es
comprobado con respecto al caso.
NON_REGEX = Este elemento especifica el carácter que define una cadena sin expresiones regulares. El
el valor predeterminado para esto es un%. Si un elemento comienza con el carácter NON_REGEX, entonces el elemento es
nunca comprobó las expresiones regulares. Si el artículo no comienza con CITA
carácter, luego suck intenta determinar si es una expresión regular, y si lo es, usa
regex () en él. Este elemento es para que puedas decirle a suck que trate las cadenas como "$$$$ DINERO
$$$$ "como elementos no regex. SI USTED UTILIZA AMBOS caracteres QUOTE y NON_REGEX en una cadena,
el carácter NON_REGEX DEBE aparecer primero.
GRUPO = Esta línea le permite especificar mantener o eliminar parámetros en un grupo por
base de grupo. Hay tres partes en esta línea. Cada parte de esta línea debe ser
separados exactamente por un espacio. La primera parte es "conservar" o "eliminar". Si esto es
conservar, solo los artículos de ese grupo que coincidan con los parámetros del archivo de grupo se
descargado. Si se elimina, los artículos de ese grupo que coinciden con los parámetros no se
descargado. La segunda parte, el nombre del grupo es el nombre completo del grupo para que los artículos se verifiquen.
contra el archivo de grupo. El nombre del grupo puede contener un * como último carácter, para que coincida
varios grupos, por ejemplo: "comp.os.linux. *" coincidiría con comp.os.linux.announce,
comp.os.linux.answers, etc. La tercera parte especifica el archivo de grupo que contiene el
parámetros con los que comparar los artículos. Tenga en cuenta que si especificó un sufijo con el
-p opción, entonces este sufijo se adjunta al nombre del archivo cuando suck lo busca,
A MENOS QUE use la opción -k anterior.
GROUP_OVERRIDE_MASTER Esto le permite anular el comportamiento predeterminado del master kill
Archivo. Si esta opción está en el archivo master kill, incluso si un artículo está marcado para
borrado por el archivo master kill, se compara con los archivos del grupo. Si el grupo
files dice que no lo elimine, luego se guarda el artículo.
TIEBREAKER_DELETE Esta opción le permite anular el valor predeterminado del desempate incorporado.
Existe la posibilidad de que un archivo de grupo marque un mensaje como guardado y otro
archivo de grupo como muerto. El valor predeterminado integrado es entonces mantener el mensaje. El
La opción TIEBREAKER_DELETE anulará eso y hará que se elimine el artículo.
USE_EXTENDED_REGEX Esta opción le dice a suck que use expresiones regulares extendidas vice
expresiones regulares estándar. Puede usarse en el archivo de eliminación maestro, en cuyo caso
se aplica a todos los killfiles, o en un killfile individual, donde solo se aplica a los
parámetros que lo siguen en el killfile.
XOVER_LOG_LONG Esta opción le dice a suck que formatee el killfile generado por un Xover
killfile para que parezca un encabezado de artículo. La salida normal es simplemente imprimir el
Xover la línea desde el servidor.
PROGRAMA = Esta línea permite a suck llamar a un programa externo para comprobar cada artículo. Puedes
especifique cualquier argumento además del nombre del programa en esta línea. Si esta línea está en
su suckkillfile, todas las demás líneas se ignoran. En cambio, los encabezados se pasan al
programa externo, y el programa externo determina si descargar o no el
artículo. Así es como funciona. Suck bifurcará su programa, con stdin y stdout
redirigido. Suck enviará los encabezados a su programa a través de stdin y esperará una respuesta
back through stdout. Aquí está el flujo de datos para cada artículo:
1. suck escribirá una cadena de 8 bytes de longitud, que representa la longitud del encabezado
registro en stdin del programa externo. Entonces la longitud está en ascii, está alineada a la izquierda,
y termina en una nueva línea (ejemplo: "1234 \ n").
2. Suck escribirá el encabezado en stdin del programa externo.
3. suck esperará un código de respuesta de 2 caracteres en stdout. Este código de respuesta es
ya sea "0 \ n" o "1 \ n" (NO BINARIO CERO NI UNO, ASCII CERO O UNO). Si el regreso
el código es cero, suck descargará el artículo, si es uno, suck no lo hará.
4. Cuando no haya más artículos, la longitud anotada (para el paso 1) será
cero (nuevamente en ascii "0 \ n"). Suck esperará el programa externo.
para salir antes de continuar. El programa externo puede hacer cualquier limpieza que necesite,
luego salir. Nota: suck no continuará procesando hasta que el programa externo
salidas
PERL = Esta línea permite a suck llamar a una subrutina de perl para comprobar cada artículo. Con el fin de
use esta opción, debe editar el Makefile, específicamente las opciones PERL *. Si el PERL =
línea está en su archivo suckkill, todas las demás líneas se ignoran. En cambio, el encabezado se envía a
su subrutina de perl, y su subrutina determina si el artículo se descarga o no.
El parámetro en la línea PERL = especifica el nombre de archivo de la rutina de Perl, por ejemplo:
PERL = perl_kill.pl
Consulte sample / perl_kill.pl para ver una subrutina de perl de muestra. Hay un par de claves
puntos en esta muestra. El "paquete Embed :: Persistant;" debe estar en el archivo perl. Esta
es para que los nombres de las variables que cree no entren en conflicto con los nombres de las variables en suck.
Además, la subrutina que defina debe ser "perl_kill", a menos que cambie el
PERL_PACKAGE_SUB define en suck_config.h. Además, su subrutina debe devolver exactamente una
valor, un número entero, 0 o 1. Si la subrutina devuelve 0, entonces el artículo es
descargado, de lo contrario, el artículo no se descarga.
NOTAS: El archivo perl solo se compila una vez, antes de que se descarguen los artículos. Esto es
para evitar retrasos prolongados entre artículos mientras se vuelve a compilar la rutina de perl. También,
debe utilizar Perl 5.003 o más reciente. Además, se recomienda ejecutar 'perl -wc filter'
ANTES de usar su filtro, para verificar errores de sintaxis y evitar problemas.
SUCKXOVER
Si el archivo chupar existe, luego suck usa el comando XOVER para obtener información sobre el
artículos y decida si descargar o no el artículo. Los archivos Xover usan el mismo
sintaxis como suckkillfiles, pero admite un subconjunto de los comandos.
Los siguientes comandos de killfile no son compatibles con los archivos suckxover:
NRGRUPOS:
ENCABEZAMIENTO:
CUERPO:
TIEBREAKER_DELETE:
Solo se comprobarán las siguientes líneas de encabezado:
Título:
Desde:
Message-ID:
Referencias:
El comportamiento de los comandos de tamaño ( TAMAÑO DEL CUERPO>, TAMAÑO DEL CUERPO <, HILINES, y LÍNEAS BAJAS ) especificar
el tamaño total del artículo (no solo el cuerpo) en bytes o líneas, respectivamente.
Todos los demás parámetros están permitidos. Sin embargo, si usa un parámetro no válido, es
silenciosamente ignorado.
SUCKXOVER y PROGRAMA = or PERL = parámetros
Estos parámetros son compatibles con un archivo suckxover, sin embargo, funcionan de manera ligeramente diferente
de lo descrito anteriormente. La diferencia clave es que antes de enviar a cada individuo
línea de vista general a su programa, suck le enviará la lista de descripción general de que
recupera del servidor. Esta descripción general.fmt es una línea separada por tabuladores que describe
campos en cada línea de descripción general.fmt.
Para el parámetro PROGRAM =, suck enviará primero a su programa una cadena de 8 bytes, que
es la longitud de la descripción general.fmt. Esta longitud está formateada como las longitudes anteriores (ver nr1
bajo PROGRAMA =). Suck enviará el resumen.fmt. Después de eso, el flujo es tan
descrito arriba. Consulte sample / killxover_child.c para ver un ejemplo.
Para el parámetro PERL =, su programa debe tener dos subrutinas. El primero es
perl_overview, que recibirá el resumen.fmt y no devolverá nada. El segundo
La subrutina es perl_xover, que recibirá la línea xoverview y devolverá 0 o 1, como
descrito en PERL = arriba. Consulte sample / perl_xover.pl para ver un ejemplo.
SUCKOTHERMSGS
If chupadores existe, debe contener líneas formateadas de una de estas tres formas. La primera
way es una línea que contiene un ID de mensaje, con el <> incluido, por ejemplo:
<12345@algunhost.com>
Esto hará que se recupere el artículo con ese ID de mensaje.
La segunda forma es poner un nombre de grupo y un número de artículo en una línea que comience con un!, Por ejemplo:
! comp.os.linux.announce 1
Esto hará que se descargue ese artículo específico.
También puede obtener un grupo de artículos de un grupo utilizando la siguiente sintaxis:
! comp.os.linux.announce 1-10
Independientemente del método que utilice, si el artículo especificado existe, se descargará en
además de los artículos recuperados a través del chupar noticiasrc. Estas formas se pueden utilizar para obtener una
artículo específico en otros grupos, o para descargar un artículo que fue asesinado. Estos
somos procesado a través de las rutinas de artículos de eliminación.
DESCARGAR
If chuparnodescargar existe, debe constar de líneas que contengan un ID de mensaje, con el <>
incluido, por ejemplo:
<12345@algunhost.com>
Esto hará que el artículo con ese ID de mensaje NUNCA se descargue. El ID del mensaje
debe comenzar en la primera columna de la línea (sin espacios iniciales). Este archivo anula
chupadores por lo que si un artículo está en ambos, no se descargará.
PUBLICAR FILTRO
si el -y post_filtro La opción se especifica en la línea de comando junto con cualquiera de
los modos por lotes, luego suck llamará al filtro posterior especificado, después de descargar el
artículos y antes de procesarlos / publicarlos. El filtro se pasa al directorio.
donde se almacenan los artículos (la opción -dm). El programa de filtrado es responsable de
analizar el contenido del directorio. Consulte sample / post_filter.pl para obtener una publicación de muestra
filtrar. Esta opción fue diseñada para permitirle agregar su propio nombre de host a la Ruta:
encabezado, pero si necesita hacer algo más con los mensajes, puede hacerlo.
EXTERIOR IDIOMA FRASES
Si -l frases se especifica la opción o el archivo /usr/local/lib/suck.phrases (definido en
suck_config.h) existe, luego suck cargará un archivo de frase en un idioma alternativo y lo usará
para todos los mensajes de estado y error, en lugar de los valores predeterminados integrados. La linea de comando
anula la compilación predeterminada, si ambos están presentes. El archivo de frases contiene todos
mensajes usados por suck, rpost, testhost y lmove, cada uno en una línea separada y encerrados en
citas. Para generar un archivo de frase de muestra, ejecute “piensen de nuevo sobre los incrementos de precio” frases desde la línea de comando. Esta
creará "texts.engl", que es una lista de las frases predeterminadas. Simplemente edita esto
archivo, cambiando las frases en inglés al idioma de su elección, asegurándose de mantener
las frases dentro de las comillas. Estas frases pueden contener variables para imprimir elementos.
proporcionado por el programa, como el nombre de host. Las variables se designan por% vN% donde N es un
una secuencia por frase. Estas variables pueden existir en cualquier orden en la línea de frase,
por ejemplo,
"Hola,% v1%, bienvenido a% v2%" o
"Bienvenido a% v2%,% v1%"
son ambas frases válidas. Las frases pueden contener, \ n, \ r o \ t para imprimir una nueva línea, carro
return o tab, respectivamente. Tenga en cuenta que la primera línea del archivo de frases es el actual
número de versión. Esto se compara con la versión de suck running, para asegurarse de que el
El archivo de frases es la versión correcta.
Si modifica el código fuente y agrega frases nuevas, deberá volver a generar
frases.h, para que todo funcione correctamente. Para recrear, solo ejecuta “piensen de nuevo sobre los incrementos de precio” frases.h de
la línea de comando.
SEÑAL MANEJO
Suck acepta dos señales, definidas en suck_config.h. La primera señal (SIGTERM predeterminado)
hará que Suck termine de descargar el artículo actual, agrupe los artículos que fueron
descargado y salga sin errores.
La segunda señal (por defecto SIGUSR1) hará que suck use los valores de pausa definidos con
la opción -w (ver arriba).
SALIR Codigos
Suck saldrá con los siguientes códigos de retorno:
0 = éxito
1 = no hay artículos disponibles para descargar.
2 = suck obtuvo una respuesta inesperada a un comando que envió al servidor remoto.
3 = se utilizó la opción -V.
4 = suck no pudo realizar la autorización NNTP con el servidor remoto.
-1 = error general.
HISTORIA
Autor original - Tim Smith (dirección desconocida)
Mantenedores -
Marzo de 1995 - Sven Goldt (goldt@math.tu-berlin.de)
Julio de 1995 - Robert A. Yetman (boby@pixi.com)
Use suck en línea usando los servicios de onworks.net