SkÃ¥ne Sjælland Linux User Group - http://www.sslug.dk Forside   Tilmelding   Postarkiv   Forum   Kalender   Søg
MhonArc Dato: [Date Prev] [Kronologisk oversigt] [Date Next]   TrÃ¥d: [Date Prev] [Oversigt trÃ¥de] [Date Next]   MhonArc
 

Re: [PERL] Dialog fra perl



<sslug@sslug> skrev i en meddelelse
news:sslug@sslug
> On Fri, Sep 27, 2002 at 07:15:48AM +0200, Leif Neland wrote:
> > Jeg ville gerne kalde dialog fra et perlscript
> >
> > Jeg kan godt kalde dialog -yesno, der returnerer et errorlevel, men
hvodden
> > klarer man de varianter, der returnerer en streng i stderr?
>
> En mulighed ville være at bruge IPC::Open3, som du kan bruge til at åbne
et
> program og give dig de 3 filehandles stdin, stdout og stderr, men det er
> måske lidt overkill.
>
> En anden mulighed er at kalde dialog som:
>
> my $return = `dialog argumenter 2>&1`;
>
> Hvor perl starter en shell op for dig, der igen starter dialog op for dig
> med stderr duplikeret til stdout - det tager nok en anelse flere
ressourcer
> at køre, men det er lettere at bruge;

Bortset fra at stdout skal til skærmen, fordi det netop er den dialog, jeg
ønsker at vise for brugeren.

Jeg endte med #!/usr/bin/perl
$res=system("dialog --inputbox 'Tast noget' 8 80 Default 2>/tmp/xyz");
open (IN,"/tmp/xyz");
$in = <IN>;
close IN;
die ("Canceled") if $res;
print "Du skrev $in\n";

Der skal lige laves et sikrere filnavn end /tmp/xyz

Leif




 
Forside   Tilmelding   Postarkiv   Oversigt   Kalender   Søg

 
 
Henvendelse vedrørende websiderne til <www_admin>. Senest ændret 2005-08-10, klokken 19:54
Denne side vedligeholdes af MHonArc .