Blazz0r Δημοσ. 17 Αυγούστου 2010 Δημοσ. 17 Αυγούστου 2010 Καλησπερα ειμαι καινουργιος στον προγραμματισμο, και θα ηθελα μια τελειως απλη βοηθεια. Γραφω σε ubuntu, και εχω το scriptaki με το οποιο αρχιζεις τον προγραμματισμο: #!usr/bin/perl print "Hello world\n" ; Το εχω λοιπον στον editor και το εκανα εκτελεσιμο με την εντολη chmod. Το τρεχω (sto terminal) και το προγραμμα κλεινει αμεσως πριν προλαβω να δω τιποτα. Φανταζομαι οτι λοιπει μια εντολη που να κανει pause το προγραμμα και να περιμενει το χρηστη να το κλεισει;
Labfrog Δημοσ. 17 Αυγούστου 2010 Δημοσ. 17 Αυγούστου 2010 Δεν σου τυπώνει στο terminal το Hello world? Αν το τυπώνει τι άλλο θέλεις να δεις? PS:Και το σωστό είναι #!/usr/bin/perl
Blazz0r Δημοσ. 17 Αυγούστου 2010 Μέλος Δημοσ. 17 Αυγούστου 2010 Δεν σου τυπώνει στο terminal το Hello world? Αν το τυπώνει τι άλλο θέλεις να δεις? PS:Και το σωστό είναι #!/usr/bin/perl Ναι οντως. Δεν χερω αν το τυπωνει αυτο λεω. Κλεινει αμεσως, δεν προλαβαινω να δω τιποτα. Το βλεπω στην γραμμη εργαλειων να εμφανιζεται (το τερματικο) αλλα ακαριαια. Χρειαζομαι κατι ωστε να το κλεινω εγω, χειροκινητα.
parsifal Δημοσ. 17 Αυγούστου 2010 Δημοσ. 17 Αυγούστου 2010 Συνηθισμένη παρανόηση που κάνουν αρκετοί αρχάριοι προγραμματιστές (κυρίως σε Windows βέβαια, αλλά να που συμβαίνει και σε Linux) όταν αρχίζουν να φτιάχνουν τα πρώτα τους console προγραμματάκια, σχεδόν όλοι την πατήσαμε έτσι ακριβώς και δεν καταλαβαίναμε το γιατί. Το σκριπτάκι που έφτιαξες είναι ένα console app, δηλαδή εφαρμογή τερματικού. Όχι μία εφαρμογή γραφικού περιβάλλοντος με την κλασσική event/menu-driven λογική (δηλαδή, να ανοίγει το παράθυρο της εφαρμογής και να περιμένει είσοδο από τον χρήστη). Όταν εκκινείς μία εφαρμογή τερματικού από το γραφικό περιβάλλον μίας διανομής Linux ή από το γραφικό περιβάλλον των Windows ή άλλο λειτουργικό με διπλό κλικ στο εκτελέσιμο αρχείο από κάποιον file manager, αυτό που θα συμβεί κατά πάσα πιθανότητα (εκτός αν έχεις κάνει κανένα περίεργο customization) είναι ότι θα εκκινήσει σε ένα παράθυρο ένα προσωρινό τερματικό και μέσα σε αυτό θα εμφανιστεί το output του προγράμματός σου. Αυτό το τερματικό όμως θα έχει διάρκεια ζωής ακριβώς ίση με τον χρόνο που θα πάρει η ολοκλήρωση της εκτέλεσης του προγράμματός σου. Μόλις το πρόγραμμά σου δηλαδή τερματίσει, θα κλείσει αυτόματα και το παράθυρο του τερματικού, οπότε πάπαλα το output, το έχασες! Αυτό που πρέπει να κάνεις και να σου γίνει συνήθεια είναι να ανοίγεις ο ίδιος ένα τερματικό (στο Ubuntu είναι στο μενού Applications > Accessories > Terminal) και να τρέχεις από εκεί το script. Έτσι, το παράθυρο του τερματικού θα παραμείνει ανοικτό μετά την εκτέλεση του script σου και θα μπορείς να δεις το output μια χαρά.
Blazz0r Δημοσ. 17 Αυγούστου 2010 Μέλος Δημοσ. 17 Αυγούστου 2010 Να σε καλα φιλε λυθηκε το προβλημα και σε ευχαριστω για τα tips. Αισθανομαι αρχαριος τωρα! Εχω και αλλη μια αρχαρια ερωτηση. Χρησιμοποιω emacs, αν το ξερετε (πονταρω ναι), για να γραφω τα scripts και τρεχω τον gdb debugger που ειναι ενσωματομενος στο emacs. Το exec αρχειο μου λεγεται Perl.pl και ο debugger μου λεει πως για να κανω debugg γραφω "file" η "exec-file" και μετα το ονομα του προγραμματος. Γραφω λοιπον exec-file Perl.pl και μου γραφει "not in executable file format: file format not recognized". Ας σημειωθει οτι το εχω κανει executable με το chmod και δοκιμασα και τιν εντολη "file" αλλα τιποτα
parsifal Δημοσ. 17 Αυγούστου 2010 Δημοσ. 17 Αυγούστου 2010 Από GDB manual - 15.4 Supported languages: gdb supports C, C++, D, Objective-C, Fortran, Java, Pascal, assembly, Modula-2, and Ada. No Perl, sorry! Έχει όμως ενσωματωμένο debugger ο ίδιος ο interpreter της Perl, τον δοκίμασες... ;
Blazz0r Δημοσ. 17 Αυγούστου 2010 Μέλος Δημοσ. 17 Αυγούστου 2010 Πωω, και να φανταστεις το βιβλιο για perl μου προτεινε emacs... Thanks a lot!
gtroza Δημοσ. 17 Αυγούστου 2010 Δημοσ. 17 Αυγούστου 2010 ως "αρχάριος" ξεκίνησες με "αρχαία" ! καλά που υπάρχει ο "δημοτικιστής" parsifal ! :mrgreen::mrgreen::mrgreen: .
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.