The UNIX and Linux Forums  


Go Back   Die UNIX-und Linux-Foren > Top Foren > UNIX for Dummies Questions & Answers
.
Google unix.com



UNIX for Dummies Questions & Answers Wenn Sie nicht sicher sind, wo Sie eine UNIX-oder Linux-Frage, post it here. Alle UNIX-und Linux-Anfänger willkommen!

Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
Faden Thread Starter Forum Antworten Last Post
mit foreach Schleife sam4now Shell Programmierung und Scripting 6 04-26-2008 12:22 PM
Foreach Schleife haze21 Shell Programmierung und Scripting 4 11-16-2007 03:11 AM
foreach Ordner eltinator Shell Programmierung und Scripting 7 08-13-2007 03:37 AM
foreach / grep Hilfe! JimWork Shell Programmierung und Scripting 6 07-27-2007 05:25 PM
foreach-Kommando? geoquest UNIX for Dummies Questions & Answers 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 Thread Tools Suche diesen Thread Rate Thread Anzeige-Modi
  #1 (permalink)  
Old 11-19-2008
asulli01 asulli01 is offline
Registrierte Nutzer
  
 

Join Date: Nov 2008
Beiträge: 6
foreach-Anweisung in ksh

Hi,
Mein Skript ausgeführt werden soll, durch alle Unterverzeichnisse rekursiv in SUBDIR_LIST, führen Sie einen Befehl in jedem ClearCase subdir, Druck auf die merge_results1.txt und fügen Sie eine neue Zeile auf die Ergebnisse, bevor sie in den nächsten subdir. Alle Ergebnisse sollten append zu merge_results1.txt, sind aber getrennt durch eine Linie, so ist es einfacher zu lesen.


Kann jemand mir helfen, mit der foreach-Anweisung?


#! / usr / bin / ksh
/ usr / Atrium / bin / cleartool Startansicht a442592_merge_diff_2.0to2.5

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

SUBDIR_LIST \u003d `ls-d FMR * /"


# für alle Unterverzeichnisse ein print merge-Befehl und fügen Sie eine neue Zeile zu merge_results1.txt #

für jede $ (SUBDIR_LIST)

/ usr / Atrium / bin / cleartool findmerge. -fver .../strutsplus-2.0_bos/LATEST-print> / home/a442592/merge_results1.txt

# Schleife endet hier

cat / home/a442592/merge_results1.txt | sed 's / Needs Merge / / g' | sed 's / "/ / g' | cut-d [-f1> / home/a442592/merge_results2.txt

cat ~ / merge_results2.txt | mailx-r <Form E-Mail->-s' Sync merge zwischen 2,0 und 2,5 "<zu e-mail>

Danke
  #2 (permalink)  
Old 11-19-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: Feb 2007
Posts: 4342
Die Syntax für eine for-Schleife ist:


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

Grüße
  #3 (permalink)  
Old 11-25-2008
asulli01 asulli01 is offline
Registrierte Nutzer
  
 

Join Date: Nov 2008
Beiträge: 6
Hi.
Das hat - dank.

Mein Problem ist nun, dass es immer geht durch die Schlaufe fügt eine Linie, die ist ok, wenn es ausgegeben wird. Mein Problem ist, dass ich jetzt immer zwischen 3 und 4 leere Zeilen, damit ich jetzt brauchen, um eine if-Anweisung zu sagen, wenn eine leere Zeile bereits vorhanden ist nicht ein weiteres.

Sie wissen, wie man das tun?

CODE:
SUBDIR_LIST \u003d `ls-d FMR *`
für die DIR in `ls-d * FMR" tun
/ usr / Atrium / bin / cleartool findmerge $ DIR-fver .../strutsplus-2.0_bos/LATEST-print>> / home/a442592/merge_results1.txt
echo>> / home/a442592/merge_results1.txt "\ n"
getan
cat / home/a442592/merge_results1.txt | sed 's / Needs Merge / / g' | sed 's / "/ / g' | cut-d [-f1> / home/a442592/merge_results2.txt


Danke
Angela
  #4 (permalink)  
Old 11-25-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: Feb 2007
Posts: 4342
Was bedeutet dieser Befehl?


Code:
echo >> /home/a442592/merge_results1.txt "\n"

Haben Sie die gewünschte Ausgabe, wenn Sie diesen Befehl?
Ist dies nicht der Fall, nach dem Inhalt der merge_results1.txt und die gewünschte Ausgabe.

Grüße
  #5 (permalink)  
Old 11-25-2008
asulli01 asulli01 is offline
Registrierte Nutzer
  
 

Join Date: Nov 2008
Beiträge: 6
Die Loops hält Anhängen der gleichen Datei, so das Echo-Kommando wird eine Linie zwischen den einzelnen Schleife. wenn ich es bekomme ich keine Zeile Separatoren.

Das ist es, was ich mich jetzt (mit "echo ...'):

___________________________________________

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

__________________________________________

Die Räume zwischen sollte nur eine Zeile, aber mein Code fügt eine Zeile unabhängig von jeder Ausgabe der Schleife. So möchte ich sagen, dass, wenn eine leere Zeile bereits vorhanden ist keine neue hinzufügen.

Was sollte es so aussehen wird:

___________________________
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

__________________________

Danke
Angela
  #6 (permalink)  
Old 11-26-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: Feb 2007
Posts: 4342
Es ist schwierig, wenn Sie nicht wissen, wann Ihr Befehl erzeugt eine leere Zeile.
Sie können alle emptylines aus dem Ausgang mit:


Code:
sed '/^$/d' file > newfile

Grüße
  #7 (permalink)  
Old 11-26-2008
asulli01 asulli01 is offline
Registrierte Nutzer
  
 

Join Date: Nov 2008
Beiträge: 6
Hi,
Das ist nicht wirklich, was ich brauche, weil ich noch 1 Leerzeile.

Ich fand diese - es entfernt doppelte, aufeinander folgenden Zeilen
awk 'a! ~ $ 0; ($ a \u003d 0) "


würden Sie wissen, wie sie zu ändern, um nur 1 der beiden Linien?

Danke
Closed Thread

Lesezeichen

Thread Tools Suche diesen Thread
Suche diesen Thread:

Erweiterte Suche
Anzeige-Modi Rate this thread
Rate this thread:

Forumregeln
Du möglicherweise nicht neue Themen
Du möglicherweise nicht nach Antworten
Du möglicherweise nicht post-Anlagen
Du möglicherweise nicht bearbeiten Sie Ihre Beiträge

BB-Code ist Auf
Smilies sind Auf
[IMG] Code Auf
HTML-Code ist Aus
Trackbacks sind Auf
Pingbacks sind Auf
Refbacks sind Auf




Alle Zeiten sind GMT -4. Es ist jetzt 05:21 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Ltd. Sprachliche Übersetzungen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Die UNIX-und Linux-Foren Content © Copyright 1993-2009. Alle Rechte Reserved.Ad Management von RedTyger

Content Relevant URLs durch vBSEO 3.2.0