Veröffentlicht 9. Februar 200916 j Hallo zusammen, ich hoffe dass mir jemand weiterhelfen kann. Ich habe erst vor wenigen Tagen mit Perl angefangen und hänge nun an folgender Zeile: unless ($ARGV[0]) { push(@ARGV, $Dir); $Dir enthält eine Pfadangabe. Unless ist ja ähnlich wie eine If-Bedinung, aber die Bedinung muss ja negativ sein. Bedeutet dies hier, wenn $ARGV[0] einen Inhalt besitzt, wird dieser in einer Datei im Pfad $Dir hinzugefügt? Ich würde mich sehr über Eure Hilfe freuen. Grüße: Candid
9. Februar 200916 j Hi, unless ($ARGV[0]) { push(@ARGV, $Dir); Es bedeutet wenn $ARGV[0] nicht leer ist wird das Array @ARGV mit $Dir erweitert. ciao, vic
9. Februar 200916 j Hey Victorinox, vielen Dank für deine schnelle Hilfe!! Super, freut mich riesig, dass Deine Antwort so schnell kam. Grüße: Candid
9. Februar 200916 j Hallo zusammen, Eure bisherige Hilfe hat mir schon sehr weitergeholfen. Aber nun hänge ich an folgender Geschichte: my $host= $1; &d("\$host = #$host#"); if ( !$host_used{$host} ) { $hostgroup_used{$host} = 1; Mir ist hierbei nicht klar, wofür das "&d" steht bzw. was hier vor sich geht: ( !$host_used{$host} ) wenn es ein Array gewesen wäre ich davon ausgegangen, dass es eine Zuweisung gewesen wäre. Aber so kann ich nur sehr sehr wenig damit anfangen. Ich würde mich über Eure Hilfe sehr freuen! Grüße: Candid
9. Februar 200916 j Hi, ich empfehle dir: Tutorials - perldoc.perl.org FAQs - perldoc.perl.org Es ist schon genug Herausforderung als Einsteiger einen eigenen Quelltext zu schreiben, aber einen fremden QT zu verstehen ... - damit wirst du nicht glücklich. Ueberleg dir nochmal, ob du dir das wirklich antun willst. &d = Funktionsaufruf $host_used{$host} = Hash (Assoziatives Array) ( !$host_used{$host} ) = Ueberprüfung, ob der zugehörige Wert des Keys "wahr" ist ciao, vic
9. Februar 200916 j Hallo Victorinox, Du warst mal wieder mein Retter! Naja also ich bastel gerade an dem Quelltext, weil ich den komplett umschreiben soll - leider bleibt mir da nichts anderes übrig als das durchzuziehen. Vielen Dank nochmal für die schnelle Hilfe. :uli Grüße: Candid
10. Februar 200916 j Es bedeutet wenn $ARGV[0] nicht leer ist wird das Array @ARGV mit $Dir erweitert. Der Block nach einem unless wird nur ausgeführt, wenn die Bedingung _nicht wahr ist. D.h. in diesem Fall, dass $Dir dem Array nur hinzugefügt wird, wenn $ARGV[0] keinen Wert beinhaltet. Statt "unless" könnte man hier auch schreiben if (!$ARGV[0]{ push(@ARGV, $Dir);} D.h. wenn keine Kommandozeilenparameter übergeben wurden, wird die Pfadangabe in dieses Array geschrieben. Scheint mir eine recht merkwürdige Art zu sein, ein Skript mit einem Default-Wert starten zu lassen.
13. Februar 200916 j Hey zusammen, ich wollte mich nochmal recht herzlich für Eure Hilfe bedanken! Ich hab den Quelltext jetzt so gut wie durch und bin auch froh darüber weil es schon bitter ist. Aber für Eure Hilfe bin ich euch sehr dankbar! THX. Grüße: Candid
14. Februar 200916 j &d = Funktionsaufruf Und sogar ein sehr dummer Funktionsaufruf dazu auch noch. Das & vor dem Funktionsnamen setzt nich nur das Prototyping aus (was ziemliches Chaos veranstalten koennte), sondern gibt der Methode auch noch gleich @_ als Parameter mit (was noch mehr Chaos veranstalten koennte). ( !$host_used{$host} ) = Ueberprüfung, ob der zugehörige Wert des Keys "wahr" ist Die frage hier ist ob du uebrpruefen willst ob der Key existiert oder ob er einen Wert hat oder ob er einen gueltigen Wert hat. So wie es jetzt ist wuerde das nur false sein wenn der Key nicht da waere oder der Wert undef waere. Mit defined() wuerdest du ueberpruefen ob der Wert nicht undef ist. "" waere also akzeptabel. Mit exists() uebrpruefst du ob der Key existiert. Aber wie victorinox schon gesagt hat: Kopf hoch - perldoc ist dein Freund.
19. Februar 200916 j Hallo nochmal zusammen, vielen Dank für Eure Hilfe!!! Ich habe ein zum Teil fertiges Programm bekommen und musste dieses fertigstellen. Leider waren eben nur zwei Kommentare in 216 Zeilen Code vorhanden. Das hat mir anfangs das Leben sehr sehr schwer gemacht. Die meiste Zeit hat es gekostet den bisherigen Code zu verstehen. Aber mit Eurer Hilfe hat es funktioniert. Thx@all... Grüße: Candid
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.