The UNIX and Linux Forums  


Go Back   El UNIX y Linux Foros > Arriba Foros > UNIX for Dummies Preguntas y Respuestas
.
google unix.com



UNIX for Dummies Preguntas y Respuestas Si no está seguro de que para publicar un UNIX o Linux cuestión, puesto que aquí. Todos los novatos en Linux, UNIX y bienvenida!

Más UNIX y Linux Foro Temas usted puede encontrar útiles
Hilo Hilo para principiantes Foro Respuestas Último mensaje
mediante bucle foreach sam4now Programación de scripts de shell y 6 04-26-2008 12:22 PM
Bucle foreach haze21 Programación de scripts de shell y 4 11-16-2007 03:11 AM
foreach carpeta eltinator Programación de scripts de shell y 7 08-13-2007 03:37 AM
foreach / grep ayuda! JimWork Programación de scripts de shell y 6 07-27-2007 05:25 PM
foreach mando? GeoQuest UNIX for Dummies Preguntas y Respuestas 5 05-20-2002 06:11 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 11-19-2008
asulli01 asulli01 is offline
Usuario Registrado
  
 

Fecha: noviembre 2008
Publicaciones: 6
foreach declaración en ksh

Hola,
Mi script debe correr a través de todos los subdirectorios recursivamente en SUBDIR_LIST, ejecute un comando en cada ClearCase subdir, imprimir a la merge_results1.txt y añadir una nueva línea con los resultados antes de ir a la siguiente subdir. Todos los resultados deben anexar a merge_results1.txt, pero están separados por una línea por lo que es más fácil de leer.


¿Puede alguien me ayude con la declaración foreach?


#! / usr / bin / ksh
/ usr / atrios / bin / cleartool startview a442592_merge_diff_2.0to2.5

cd / view/a442592_merge_diff_2.0to2.5/vobs_jil

SUBDIR_LIST \u003d `ls-d * FMR /`


# para todos los subdirectorios ejecutar un comando de impresión de combinación y añadir una nueva línea a # merge_results1.txt

por cada $ SUBDIR_LIST ()

/ usr / atrios / bin / cleartool findmerge. -fver .../strutsplus-2.0_bos/LATEST impresión> / home/a442592/merge_results1.txt

# bucle termina aquí

cat / home/a442592/merge_results1.txt | sed 's / Necesidades fusión / / g' | sed 's / "/ / g' | cut-d [-f1> / home/a442592/merge_results2.txt

cat ~ / merge_results2.txt | mailx-r <forma e-mail>-s' Sync fusión entre 2,0 y 2,5 '<to e-mail>

Gracias
  #2 (Enlace permanente)  
Old 11-19-2008
Franklin52 Franklin52 is online now Forum Staff  
Moderador
  
 

Fecha: febrero 2007
Mensajes: 4.342
La sintaxis de un bucle for es:


Código:
for file in `ls -d fmr*/`; do
  #
  # do your stuff here with "$file"
  #
done

Recuerdos
  #3 (Enlace permanente)  
Old 11-25-2008
asulli01 asulli01 is offline
Usuario Registrado
  
 

Fecha: noviembre 2008
Publicaciones: 6
Hola.
Eso funcionó - gracias.

Mi problema ahora es que cada vez que pasa por el bucle se añade una línea, que está bien si no hay salida. Mi problema es que estoy recibiendo de 3 a 4 líneas en blanco, así que ahora es necesario poner if decir si una línea en blanco ya no añadir otro.

¿Sabe cómo hacerlo?

CÓDIGO:
SUBDIR_LIST \u003d `ls-d *` FMR
de DIR en `ls-d * FMR»; hacer
/ usr / atrios / bin / cleartool findmerge $ DIR-fver .../strutsplus-2.0_bos/LATEST-print>> / home/a442592/merge_results1.txt
echo>> / home/a442592/merge_results1.txt "\ n"
hecho
cat / home/a442592/merge_results1.txt | sed 's / Necesidades fusión / / g' | sed 's / "/ / g' | cut-d [-f1> / home/a442592/merge_results2.txt


Gracias
Angela
  #4 (Enlace permanente)  
Old 11-25-2008
Franklin52 Franklin52 is online now Forum Staff  
Moderador
  
 

Fecha: febrero 2007
Mensajes: 4.342
¿Qué significa este comando?


Código:
echo >> /home/a442592/merge_results1.txt "\n"

¿Tiene usted la salida deseada si se quita este comando?
Si no, después el contenido de merge_results1.txt y la salida deseada.

Recuerdos
  #5 (Enlace permanente)  
Old 11-25-2008
asulli01 asulli01 is offline
Usuario Registrado
  
 

Fecha: noviembre 2008
Publicaciones: 6
Los bucles añadiendo mantiene en el mismo archivo por lo que el comando echo añade una línea entre cada ciclo. i quitarlo si me sale ninguna línea seperators.

Esto es lo que estoy haciendo ahora (con 'eco ...'):

___________________________________________

fmr-aspects/docs/pub/AspectJ-Policy-Enforcement-User-Guide.doc
fmr-aspects/jil-usage-policies-test/src/com/fmr/commons/aspectj/policy/FMRCommonsSSMCTest.java
fmr-aspects/jil-usage-policies-test/src/com/fmr/commons/aspectj/policy/TestAll.java


fmr-commons-admin/docs/pub/fmr-admin.doc
fmr-commons-admin/src/java/com/fmr/commons/admin/services/jca/JcaFactorySpec.java


fmr-commons-catalog/docs/pub








fmr-commons-cs203/build.properties
fmr-commons-cs203/old_build.xml
fmr-commons-cs203/src/main/java/com/fmr/commons/cs203/utils/CS203Constants.java
fmr-commons-cs203/src/test/java/com/fmr/commons/cs203/validator/CoreValidatorTest.java


fmr-commons-hacp/docs/TSD-FMR-COMMONS-HACP.doc
fmr-commons-hacp/scripts/hacp-build.xml
fmr-commons-hacp/src/test/config/log4j.xml

__________________________________________

Los espacios entre sólo debe ser una línea, pero mi código añade una línea que independientemente de cualquier salida del bucle. Por lo tanto, quiero decir que si una línea en blanco ya no añadir otro.

Lo que debe ser similar es la siguiente:

___________________________
fmr-aspects/docs/pub/AspectJ-Policy-Enforcement-User-Guide.doc
fmr-aspects/jil-usage-policies-test/src/com/fmr/commons/aspectj/policy/FMRCommonsSSMCTest.java
fmr-aspects/jil-usage-policies-test/src/com/fmr/commons/aspectj/policy/TestAll.java

fmr-commons-admin/docs/pub/fmr-admin.doc
fmr-commons-admin/src/java/com/fmr/commons/admin/services/jca/JcaFactorySpec.java

fmr-commons-catalog/docs/pub

fmr-commons-cs203/build.properties
fmr-commons-cs203/old_build.xml
fmr-commons-cs203/src/main/java/com/fmr/commons/cs203/utils/CS203Constants.java
fmr-commons-cs203/src/test/java/com/fmr/commons/cs203/validator/CoreValidatorTest.java

fmr-commons-hacp/docs/TSD-FMR-COMMONS-HACP.doc
fmr-commons-hacp/scripts/hacp-build.xml
fmr-commons-hacp/src/test/config/log4j.xml

__________________________

Gracias
Angela
  #6 (Enlace permanente)  
Old 11-26-2008
Franklin52 Franklin52 is online now Forum Staff  
Moderador
  
 

Fecha: febrero 2007
Mensajes: 4.342
Es difícil si no se sabe cuando su comando produce una línea vacía.
Puede borrar todos los emptylines de su salida con:


Código:
sed '/^$/d' file > newfile

Recuerdos
  #7 (Enlace permanente)  
Old 11-26-2008
asulli01 asulli01 is offline
Usuario Registrado
  
 

Fecha: noviembre 2008
Publicaciones: 6
Hola,
Eso no es realmente lo que necesito Porque todavía hay 1 línea en blanco.

Encontré esto - que elimina duplicado, en líneas consecutivas
awk 'uno! ~ $ 0; $ a \u003d (0) "


se sabe cómo cambiar para eliminar sólo 1 de las dos líneas?

gracias
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 12:07 PM.


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