The UNIX and Linux Forums  
Hola y bienvenida de los Estados Unidos a la UNIX y Linux Foros! Gracias por su visita y formar parte de nuestra comunidad global.

Go Back   El UNIX y Linux Foros > Arriba Foros > Programación de scripts de shell y
.
google unix.com



Programación de scripts de shell y Plantear preguntas sobre KSH, CSH, SH, BASH, PERL, PHP, SED, AWK y otros scripts de shell y lenguajes de script de shell aquí.

Más UNIX y Linux Foro Temas usted puede encontrar útiles
Hilo Hilo para principiantes Foro Respuestas Último mensaje
¿Cómo siguiente salida en perl email-Lalit Programación de scripts de shell y 1 08-08-2008 01:20 PM
Establezca una variable de salida awk Cranie UNIX for Dummies Preguntas y Respuestas 3 10-11-2007 09:39 AM
Para guardar la salida en una variable Sudhakar333 Programación de scripts de shell y 2 07-10-2007 08:45 AM
awk como salida a una variable bashirpopal UNIX for Dummies Preguntas y Respuestas 4 04-02-2003 11:02 AM
Perl scrpits ahorro en una cáscara de UNIX Hagrid UNIX for Dummies Preguntas y Respuestas 3 06-21-2001 12:42 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback vínculo Herramientas de hilo Buscar en este Hilo Tasa de Hilo Modos de visualización
  #1 (Enlace permanente)  
Old 10-07-2008
userix userix is offline
Usuario Registrado
  
 

Fecha: Mayo 2008
Puestos: 21
Guardando la salida de awk perl en una variable

¿Cómo puedo pasar awk salida a un perl variable?

Por ejemplo, quiero guardar el valor en la 4 ª columna en la variable llamada prueba. Mi mejor estimación es algo que seguir, pero estoy seguro de que esto no es correcto.

Código:
$test = system("awk '/NUMBER/{print \$4}' $_");
  #2 (Enlace permanente)  
Old 10-08-2008
otheus's Avatar
otheus otheus is offline Forum Staff  
Moderador ala Modo
  
 

Fecha: febrero 2007
Lugar: Innsbruck, Austria
Puestos: 1.884
Perl apoya el "backtick" operador, al igual que en el depósito. la única diferencia es que Perl no convierte a los espacios linefeeds ni apretar espacios adicionales. Así:
Código:
$test=`awk .... $_`;
es probablemente lo que usted desea.
  #3 (Enlace permanente)  
Old 10-08-2008
matrixmadhan matrixmadhan is offline Forum Advisor  
Technorati Master
  
 

Fecha: marzo 2005
Ubicación: en el nodo hoja del árbol B +
Mensajes: 2.952
Cita:
Publicado originalmente por userix View Post
¿Cómo puedo pasar awk salida a un perl variable?

Por ejemplo, quiero guardar el valor en la 4 ª columna en la variable llamada prueba. Mi mejor estimación es algo que seguir, pero estoy seguro de que esto no es correcto.

Código:
$test = system("awk '/NUMBER/{print \$4}' $_");
¿Por qué no utiliza la función en perl sí?

Para almacenar el valor en la columna 4 perl,

Código:
my @arr = split(/\|/, $var);
print $var[3];
¿Es eso lo que quiere decir?
  #4 (Enlace permanente)  
Old 10-09-2008
userix userix is offline
Usuario Registrado
  
 

Fecha: Mayo 2008
Puestos: 21
Quiero buscar un número se encuentra en la 4 ª columna de una línea específica en un archivo y almacenar ese valor en una variable. Este archivo contiene más de 7.000 líneas de datos. La línea específica Estoy buscando contiene las letras «OXT 'Esta es la razón por la que estaba pensando en usar awk para encontrar la línea que contiene" OXT "y, a continuación grabe el número de la 4 ª columna de esta línea solamente. Se que trabajan con dividir?
  #5 (Enlace permanente)  
Old 10-09-2008
otheus's Avatar
otheus otheus is offline Forum Staff  
Moderador ala Modo
  
 

Fecha: febrero 2007
Lugar: Innsbruck, Austria
Puestos: 1.884
Él es la transformación un archivo almacenado en $ _. Para ello, el awk de una sola línea se ve mejor. Sin embargo, normalmente se sustituyen por los siguientes:

Código:
my @test;
if (open(FOO,$_)) { 
 while ($_=<FOO>) { 
   push @test,(split)[4];
 }
}
$test=join(" ",@test);
  #6 (Enlace permanente)  
Old 10-09-2008
otheus's Avatar
otheus otheus is offline Forum Staff  
Moderador ala Modo
  
 

Fecha: febrero 2007
Lugar: Innsbruck, Austria
Puestos: 1.884
Absolutamente. ¿Está buscando exactamente una línea, o más? Son separados por las columnas en blanco? Suponiendo que sí a todas las respuestas anteriores:
Código:
my $target;
if (open(FOO,$_)) { 
 while ($_=<FOO>) { 
   next unless /OXT/;  # find OXT anywhere in line.
   $target=(split)[4];
   last;
 }
 close(FOO); # forgot this last time, though not really necessary.
}
# 4th field in $target
  #7 (Enlace permanente)  
Old 10-09-2008
época era is offline Forum Advisor  
Pastor de Gatos Inútil (en año sabático)
  
 

Fecha: marzo 2008
Ubicación: / hay / es / sólo / bin / sh
Puestos: 3.652
Sólo que elegir la primera aparición, sin embargo. El guión original de awk que devolver todas las coincidencias. No es difícil de evitar si usted sabe cualquier Perl, Citan sólo en caso de que usted es nuevo en esto.

Editado por última época; al 10-09-2008 04:44 AM.. Exposición de motivos: en primer lugar, no por última aparición (perdidas que - gracias otheus)
Closed Thread

Marcadores

Herramientas de hilo Buscar en este Hilo
Buscar en este Hilo:

Búsqueda avanzada
Modos de visualización Vota a este hilo
Vota a este hilo:

Normas de envío
puede que no nuevo puesto de hilos
puede que no enviar respuestas
puede que no enviar archivos adjuntos
puede que no editar sus puestos

Código BB es Encendido
Emoticones son Encendido
[IMG] código Encendido
Código HTML es Apagado
Trackbacks son Encendido
Pingbacks son Encendido
Refbacks son Encendido




Todas las horas son GMT -4. La hora es 03:25 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traducciones de idiomas Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Estudios
El UNIX y Linux Foros Contenido Copyright © 1993-2009. Todos los derechos Reserved.Ad Gestión por RedTyger

Las direcciones URL de contenido vBSEO 3.2.0