The UNIX and Linux Forums  


Go Back   Die UNIX-und Linux-Foren > Top Foren > UNIX für Fortgeschrittene und Experten
.
Google unix.com



UNIX für Fortgeschrittene und Experten Expert-to-Experte. Erfahren Sie fortgeschrittene UNIX-, UNIX-Kommandos, Linux-Betriebssysteme, System-Administration, Programmierung, Shell, Shell-Skripte, Solaris, Linux, HP-UX, AIX, OS X, BSD.

Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
Faden Thread Starter Forum Antworten Last Post
Bourne-Shell-Skript - log Anmelden für die Benutzer ein-und ausschalten noodlesoup Shell Programmierung und Scripting 14 09-08-2006 11:30 PM
Bourne: Wie, um einen Alias aus einer Shell-Skript techshots Shell Programmierung und Scripting 2 06-04-2006 01:38 AM
CD aus einer Bourne-Shell-Script - Please Help fawqati Shell Programmierung und Scripting 10 05-25-2006 04:26 AM
Bourne-Shell-Script dmhonor914 UNIX for Dummies Questions & Answers 2 12-10-2003 12:25 PM
Bourne-Shell-Skript psrinivas Shell Programmierung und Scripting 2 12-06-2001 03:38 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 10-18-2001
dezithug dezithug is offline
Registrierte Nutzer
  
 

Join Date: Oct 2001
Ort: Los Angeles
Beiträge: 6
Question Bourne-Shell-Skript Hilfe benötigen wenden Sie sich bitte?

Ich habe diese Zuordnung .. und ich verrückt dieses Skript, aber es ist etwas falsch mit ihr .. Wenn jemand kann mir sagen, .. watz los ... Ich würde es zu schätzen wissen .. thnx im voraus ..
Code:
count=1
val=$2
op=$1
ans=0
if [ $op = "-e" -o $op = "-o" ]
then
        if [ $op = "-e" ]
        then
                while [ $count -le $val ]
                do
                        ans=`expr $count % 2`
                        if [ $ans -eq 0 ]
                        then
                        echo "$count \c "
                        count=`expr $count + 1`
                        fi
                done
        elif [ $op = "-o" ]
        then
                while [ $count -le $val ]
                do
                        ans=`expr $count % 2`
                        if [ $ans -ne 0 ]   
                        then
                        echo "$count \c "
                        count=`expr $count + 1`
                        fi
                done
        fi
else
        while [ $count -le $val ]
        do
                echo "$count \c "
                count=`expr $count + 1`
        done
fi
Thnx wieder

Code-Tags hinzugefügt, um die Lesbarkeit - oombera

Zuletzt bearbeitet von oombera; am 02-20-2004 11:51 AM..
  #2 (permalink)  
Old 10-19-2001
LivinFree's Avatar
LivinFree LivinFree is offline Forum Advisor  
Goober Extraordinaire
  
 

Join Date: Jul 2001
Ort: Portland, OR, USA
Beiträge: 1584
Eine Sache habe ich bemerken, dass, wenn Sie mit Linux, sollten Sie die Erklärungen zu echo "echo-e". Das lässt die \ c Betreiber Arbeit.

Was genau wollen Sie hier tun? Ich habe eine harte Zeit mit dem Lesen des Skripts (siehe, es ist spät, und ich habe einige plugging Überstunden auf meiner langen Tagen der Regel ...). Es sieht aus wie können Sie einige Kommentare ...

Haben Sie lehnte, wie man "Falle" noch? Wenn ja, können Sie sich in mit, dass - man könnte die einen großen Teil der Verwirrung ", wenn" Aussagen von dort ...
  #3 (permalink)  
Old 10-19-2001
dezithug dezithug is offline
Registrierte Nutzer
  
 

Join Date: Oct 2001
Ort: Los Angeles
Beiträge: 6
siehe auch .. i 'm mit SCO UNIX .. ND .. alles funktioniert .. fein .. außer in den Loop-iz etwas falsch .. Wenn ich versuche, es laufen .. es wird Juss Keep on going ... aus irgendeinem Grund ... nd seine soo verwirrend ..

Wir haben noch nicht gelernt RECHTSSACHE .. Ich weiß, es wäre einfacher .. aber .. i Donno wie Use Case ..

wenn yoiu kann immer noch etwas .. dat wäre gr8

Thnx
  #4 (permalink)  
Old 10-23-2001
LivinFree's Avatar
LivinFree LivinFree is offline Forum Advisor  
Goober Extraordinaire
  
 

Join Date: Jul 2001
Ort: Portland, OR, USA
Beiträge: 1584
Nun, zuerst aus, es half mir sehr beim Blick auf den Code mit Gedankenstrichen in IT:
Code:
#!/bin/ksh
count=1 
val=$2 
op=$1 
ans=0 
if [ $op = "-e" -o $op = "-o" ] 
then 
     if [ $op = "-e" ] 
     then 
     while [ $count -le $val ] 
     do 
     ans=`expr $count % 2` 
          if [ $ans -eq 0 ] 
          then 
          echo "$count \c " 
          count=`expr $count + 1` 
          fi 
     done 
     elif [ $op = "-o" ] 
     then 
     while [ $count -le $val ] 
     do 
     ans=`expr $count % 2` 
          if [ $ans -ne 0 ] 
          then 
          echo "$count \c " 
          count=`expr $count + 1` 
          fi 
     done 
     fi 
else 
while [ $count -le $val ] 
do 
echo "$count \c " 
count=`expr $count + 1` 
done 
fi
Nun, das erste, was ich in der Regel versuchen, wenn es um die figureout, was mein Skript macht, ist, um ein "set-x"-Zeile am Anfang des Skripts. Das Echo aus jedem Schritt die Shell führt, so dass Sie sehen können, was los ist ...

So, wie Ich habe das Skript, (Ich gebe ein Beispiel dafür, was ich denke, ich versuche, die "e-4"-Option), hat sich in einer Schleife auf:
+ Ans \u003d 1
+ '[' 1-eq 0 ']'
+ '[' 1-le 4 ']'
+ + Expr 1% 2
Ok, interessant ... Werfen wir einen Blick auf dieses. Also, was das Skript tut, Schritt für Schritt:
Code:
     if [ $op = "-e" ]                       # This is true in our case
     then 
     while [ $count -le $val ]          # while 1 is less than or equal to 4
     do 
     ans=`expr $count % 2`         # ans = 1 % 2, or ans = 1
          if [ $ans -eq 0 ]                  # if ans (1) = 0, then continue... nope - can't continue
          then 
          echo "$count \c " 
          count=`expr $count + 1` 
          fi                                         # We're done, time to loop while waiting for ans to equal 0
Sie sehen, was das Problem ist? Hinweis: $ ans wird immer gleich 1 in diesem Fall

Hier ist eine andere (Messier, aber mehr Infos) Art und Weise sie:
Code:
if [ "$op" = "-e" -o "$op" = "-o" ]
echo " if [ $op = -e -o $op = -o ]"
        then
echo "     then"
        if [ "$op" = "-e" ]
echo "     if [ $op = -e ] "
        then
echo "     then"
        while [ "$count" -le "$val" ]
echo "     while [ $count -le $val ] "
        do
echo "     do"
        ans=`expr $count % 2`
echo "     ans=`expr $count % 2` "
                if [ "$ans" -eq "0" ]
echo "          if [ $ans -eq 0 ] "
                then
echo "          then"
                echo -e "$count \c "
echo "          echo -e $count \c"
                count=`expr $count + 1`
echo "          count=`expr $count + 1`"
Auf diese Weise können Sie Ihr Skript in Aktion ... Es sieht fast aus, als ob sie nicht wissen, wann zu beenden, oder?

Sie benötigen ein wenig Re-Design, aber ich denke, Sie sind ziemlich viel auf dem richtigen Weg

(Ooh, und ich appologize, Ich habe einige der "echo" "s" echo-e " 's, denn ich war auf der Suche in dieser auf einem Linux-System ...

Ist diese Hilfe, welche?
  #5 (permalink)  
Old 10-24-2001
dezithug dezithug is offline
Registrierte Nutzer
  
 

Join Date: Oct 2001
Ort: Los Angeles
Beiträge: 6
sehen .. Ich bin nach wie vor Donno watz .. falsch .. aber .. wat bin ich jetzt zu tun trin iz .. Pause da Programm in lil programz .. und .. trin nur Option-e .. nur für die .. und vergessen Sie die anderen Optionen .. hoffe, das wird helfen, lol .. aber .. thnx nwyz .. Ich habe versucht .. Ihr Code .. aber immer noch didnt get .. wat passiert .. Ich weiß, seine .. das Modul .. Sache geschraubt bis ..
ahh .. lol .. Ich habe auf dieser workin für wie 3 weekz .. nun .. lol. und wegen ihrer auf November 8. .. Ich habe .. etwas mehr Zeit ..


thnx .. wenn wieder .. Ich schätze es
  #6 (permalink)  
Old 10-24-2001
dezithug dezithug is offline
Registrierte Nutzer
  
 

Join Date: Oct 2001
Ort: Los Angeles
Beiträge: 6
Vielen Dank, dass Sie veryyyyy muchhhhh!

Ich habe es endlich .. zu arbeiten whoooooooooooooooohooooooooooooooooooooooooooo .. lol .. damn .. dat hat mich .. lange nuff. .. lol .. wie ein einfaches Programm. nd hat mich .. bout 3 weekz .. damn ..

nwy Z. .. thnx für Ihre Hilfe bro .. Ich weiß es ... sehr ..



Pz out!

Thnx wieder!
  #7 (permalink)  
Old 10-24-2001
LivinFree's Avatar
LivinFree LivinFree is offline Forum Advisor  
Goober Extraordinaire
  
 

Join Date: Jul 2001
Ort: Portland, OR, USA
Beiträge: 1584
Right on! Können Sie Ihre Lösung ist für uns zu sehen?
Closed Thread

Lesezeichen

Tags
Linux

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 08:48 PM.


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