The UNIX and Linux Forums  


Go Back   UNIX och Linux Forum > Upp Forum > Shell-programmering och Skript
.
google unix.com



Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här.

Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
Tråd Thread Starter Forum Svar Senaste Inlägg
att plocka upp returkod (RC) från mailx ledning och returnera den till SAS uisng är manas6 UNIX for Dummies Frågor & Svar 0 06-05-2008 07:44
visa resultatet av wc-l med ord före och efter resultat melanie_pfefer UNIX for Dummies Frågor & Svar 3 04-30-2008 08:33
välja fel servern in i en oändlig loop arjunjag High Level Programming 3 07-19-2007 02:53
Ny iteration av för-loop utan att den ökar? jeriryan87 Shell-programmering och Skript 0 07-02-2007 03:13
Regex för att plocka fram namn från följande inklusive vagnretur vid slutet av raden Shakey21 Shell-programmering och Skript 3 07-18-2002 09:27

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 Sök i denna tråd Rate Thread Visningslägen
  #1 (permalänk)  
Old 10-21-2008
manas6 manas6 is offline
Registered User
  
 

Join Date: mars 2008
Inlägg: 27
Plocka upp returkod för varje iteration och visa resultatet bara en gång i loopen.

Hej Alla,
Jag amlearning UNIX-skript. Jag har en liten fråga. Jag skulle vara tacksam om någon hjälper mig.

Jag har en lägre bit kod som delets filerna. Om filen dosent har behörighet att ta bort en viss fil har jag använt 2>> operatören spåra felkoden.

Men mitt mål är att kontrollera att återvända "rm" för varje iteration.
Vissa sånt vi bör plocka upp returkod, om värdet är större än 0 så ska du sätta en flagga för att indikera att ett fel har inträffat.
Flaggan bör initieras till noll innan iterationer börjar. Och felmeddelandet något sånt "Atleast en fil kan inte raderas.

Exempel:-Vi måste komma ihåg med en markering (something like if [[$?> 0]] så rm_errorflag \u003d 1). Behov av att använda detta i nedanstående kodsnutt

ls-l | (while read myline;
göra
if [[-f "$ myline" & & "$ myline"! \u003d *. ksh]]
sedan
echo "Ta bort" "$ myline">> temp
rm-f "$ myline" 2>> temp
fi
Done)

Behag hjälpa mig i detta.
Tack för din tid.

Hälsningar,
Manas
  #2 (permalänk)  
Old 10-21-2008
wempy's Avatar
wempy wempy is offline
Registered User
  
 

Join Date: juni 2006
Ort: Harpenden, UK
Inlägg: 208
Lägg till detta till slutet av rm raden:

Kod:
rm -f "$myline" 2>>temp || rm_errorflag=1

som kommer att ställa rm_errorflag om RM marknadsvärde är större än 0
Closed Thread

Komihåglista

Thread Tools Sök i denna tråd
Sök i denna tråd:

Avancerad sökning
Visningslägen Betygsätt denna tråd
Betygsätt denna tråd:

Utstationering Regler
Du får inte efter nya trådar
Du får inte efter svar
Du får inte skicka bilagor
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG] kod
HTML-koden är Av
Trackback är
Pingbacks är
Refbacks är




Alla tider är GMT -4. Klockan är nu 08:21.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Översättningar Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX och Linux Forum Innehållet upphovsrättsskyddat © 1993-2009. All Rights Reserved.Ad förvaltning RedTyger

Content Relevant webbadresser från vBSEO 3.2.0