🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.perl
Article #774

Re: browser w perlu , exec

#774
From: Piotr Piatkowski
Date: Mon, 08 Dec 1997 11:30
42 lines
1943 bytes
Bogumila Zawistowska <zawistow@ibm.uci.agh.edu.pl> wrote:
: Pisze programik
: exec "nazwa hosta 80|tee nazwa_pliku";
: #aby zapisac wszelkie komunikaty programu do nazwa_pliku
: print"GET/index.html"

: wsszystko to dziala recznie , ale sesja telneta nie  nie czyta tego 
: co napisane po print

Ech... Przede wszystkim exec powoduje zastąpienie aktualnego procesu 
tym uruchomionym. Więc nic co jest po exec nie ma prawa się wykonać 
(chyba że exec się nie powiódł).

Po drugie - jeżeli chcesz pisać do procesu, to trzeba jakoś skierować
dane do jego STDIN. Najprościej zrobić to funkcją open, np. tak:

open( TELNET, "|telnet host 80" ) or die "$!";
print TELNET "GET /index.html";

ale to i tak niewiele da - po pierwsze trudno jest odczytać proces 
jednocześnie do pisania i czytania (ale da się - perldoc open2), a po
drugie to zupełnie bez sensu używać do tego telneta.

Najprościej będzie tak:

use IO::Socket;

my $sock = new IO::Socket::INET ( PeerAddr => "www:80",
                                  Proto => "tcp" );

die "$!" if ! defined $sock;

$sock->autoflush( 1 );

$sock->print "GET / HTTP/1.0\n\n";

while(<$sock>) {
  print "->$_;
}

-- 
Piotr Piątkowski, Uczelniane Centrum Informatyki, AGH Krakow, POLAND
Technical Details
Message-ID: <66glo8$nbc$1@galaxy.uci.agh.edu.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!news.nask.pl!ict.pwr.wroc.pl!agh.edu.pl!agh.edu.pl!not-for-mail
References: <66gjv4$j8m$1@galaxy.uci.agh.edu.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!news.nask.pl!ict.pwr.wroc.pl!agh.edu.pl!agh.edu.pl!not-for-mail
From: Piotr Piatkowski <kompas@galaxy.uci.agh.edu.pl>
Newsgroups: pl.comp.lang.perl
Subject: Re: browser w perlu , exec
Date: 8 Dec 1997 12:30:16 +0100
Organization: University of Mining & Metallurgy
Lines: 42
Message-ID: <66glo8$nbc$1@galaxy.uci.agh.edu.pl>
References: <66gjv4$j8m$1@galaxy.uci.agh.edu.pl>
NNTP-Posting-Host: galaxy.uci.agh.edu.pl
Mime-Version: 1.0
X-Newsreader: TIN [UNIX 1.3 unoff BETA 971018; sun4m SunOS 5.5.1]
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit