On Wed, 4 Apr 2001, Leonardo wrote:
> Mas nao é bem isso que eu quero. Eu quero é por no crontab para a
> cada 1 hora um script que faça com que o telnet abra uma conexao com
> determinado host/porta e mande um string para ele.
Voce pode usar o EXPECT, mas tem o inconveniente de ser uma linguagem
nova (TCL).
O telnet é uma conexão TCP, você pode usar qualquer linguagem script
que abra uma conexão TCP.
O perl pode ser uma opção. Existem muitas bibliotecas no CPAN que
fazem isso com grande facilidade.
O script abaixo é um exemplo que fiz para aprender um pouco sobre TCP
no Perl, você pode adapta-lo para sua necessidade. Não vou comentar
sobre o programinha, pode ser que exista solução mais simples para seu
problema.
#!/usr/bin/perl
#use strict;
use Socket;
sub Open_Line {
my ($F, $dest, $port) = @_;
socket ($F, PF_INET, SOCK_STREAM, getprotobyname('tcp')) || return undef;
if ($port =~ /\D/) {
$port = getservbyname($port, 'tcp');
}
return undef if !$port;
if ($dest !~ /\b\d+\.\d+\.\d+\.\d+\/\b/) {
$dest = gethostbyname ($dest);
}
else {
$dest = inet_aton($dest);
}
# print "address = ", inet_ntoa($dest), "\n";
my $iaddr = sockaddr_in ($port, $dest);
connect ($F, $iaddr) || return undef;
my($x) = select($F); $|=1; select($x);
return 1;
}
#-----------------------------------------------
$host = "localhost" # coloque o nome ou o IP do host
$port = "80" # coloque o numero da porta, ou o nome do serviço
Open_Line (XX, $host, $port) || die "Erro: $!\n";
print XX "alguma coisa\n";
close (XX);
# end of file
--- Wagner [EMAIL PROTECTED]
Assinantes em 04/04/2001: 2204
Mensagens recebidas desde 07/01/1999: 107797
Historico e [des]cadastramento: http://linux-br.conectiva.com.br
Assuntos administrativos e problemas com a lista:
mailto:[EMAIL PROTECTED]