Problema running script

Stato
Discussione chiusa ad ulteriori risposte.

imported_opocaj

Utente Silver
18 Dicembre 2007
215
10
0
98
Allora, sto provando a fare dei semplici script in Perl, il mio solo problema è che quando ne lancio uno facendoci doppio click sopra la finestra del terminale si chiude subito e quindi lo script non va, e se lo lancio da terminale (uso Active Perl) non mi richiede gli input e quindi non posso usare gli script correttamente. Dove sbaglio?
Inoltre: Active Perl ha una IDE o sono obbligato a continuare a scrivere codice col Blocco Note?
E poi: come compilo uno script.pl in un eseguibile.exe o magari anche eseguibile.app?
Scusate le tante domande, ma voglio imparare e mi serve di risolvere queste cose...
 
Purtroppo ho il PC vecchio (19 GB di HD tutti pieni e quindi niente partizione) e mia madre ci lavora, e quindi l'ambito Windows mi è forzato perché il gestionale dei conti che serve a lei gira solo su questo. Comunque nessuno sa niente? Sono giorni che mi ci scazzo. Non c'è un interprete tipo la IDE ufficiale di Python (che mi fa comodamente lanciare lo script tramite IDLE)?
 
Dubito in perl ci sia, il perl e' il linguaggio dei sysadmin, quindi non vengono usati ide.

Se non devi usare un'interfaccia non ti conviene prendere una shell con perl da qualche parte e connetterti da putty? Poi ci vuoi scrivere con vim volendo.
Ah che pirla, dimenticavo per trasformare in exe gli script perl c'e' questo.
 
Non vedo a cosa possa servirmi Putty (se ho ben capito a cosa serve). Il mio problema non è runnare lo script in se o scrivere il codice, quanto far si che il codice mi richieda gli input quando serve. Non so se capisci ciò che intendo, ti faccio un esempio:
Codice:
print 'Inserisci il primo numero: ';
$cat1=<STdIN>;
print 'Inserisci il secondo numero: ';
$cat2=<STdIN>;
$ipo=sqrt($cat1**2 + $cat2**2);
print "L'ipotenusa vale $ipo";
Codice semplicissimo per applicare Pitagora. Quando lo lancio con doppio click il prompt si chiude subito, senza aspettare che gli passi gli input. Se lo lancio da prompt col comando perl pitagora.pl, che così dovrebbe ovviare al problema del restare a schermo, ma il terminale di dà da solo come input un valore nullo e mi stampa sempre Ipotenusa=0. Come risolvo?
 
Hai sbagliato a scrivere STDIN:
Codice:
#! /usr/bin/perl
use strict;
use warnings;

print 'Inserisci il primo cateto: ';
my $cat1 = int <STDIN>;

print 'Inserisci il secondo cateto: ';
my $cat2 = int <STDIN>;

my $ipo = sqrt($cat1**2 + $cat2**2);
print "\n", "L'ipotenusa vale $ipo", "\n";
 
Ma che azz, nella guida di base (molto base) mi diceva <STdIN>, e io mi fidavo della guida :asd:
Ora vanno bene, grazie 1000 Chobi, disponibile come sempre.
 
Stato
Discussione chiusa ad ulteriori risposte.