2008/10/28 edmarssouza <[EMAIL PROTECTED]>

> E ai pessoal, tudo bem?
> Espero que sim.
> É o seguinte, quero que quando o usuario escolher:
> -p ou --proxy e digitar o ip do servidor proxy, as respectivas
> variáveis de ambiente seja exportada: http_proxy e ftp_proxy.
> O problema é que, quando o usuário digita o ip do servidor e a porta,
> as informações não vão para as variaveis: http_proxy e ftp_proxy,
> ficando somente http:// nas duas variaveis. E as mesmas não são
> exportadas.
> Alguém poderia me ajudar, agradeceria se alguém pudesse contribuir
> para a resolução do meu problema, agradeço desde já. Um abraço.
> O código é o seguinte:
>
> #!/bin/bash
>
> server_proxy() {
> ip=$(echo $2 | cut -f1 -d ":")
> porta=$(echo $2 | cut -f2 -d ":")
> export http_proxy="http://${ip}:${porta}";
> export ftp_proxy="http://${ip}:${porta}";
> }
>
> case $1 in
> -[Pp]|--[Pp][Rr][Oo][Xx][Yy]) server_proxy ;;
> esac
>

Olá!

Primeiramente sugiro que você utilize getopts ao invés do case. Bem mais
interessante. Veja esta dica: http://www.dicas-l.com.br/dicas-l/20060119.php

Mas se quiser manter sua solução, basta passar o parâmetro para
server_proxy. server_proxy $2. Note que este será o primeiro parâmetro
posicional da função. Lá, então, substitua $2 por $1.

Outra coisa... pq este vai e vem com os : ?

-- 
Fabiano Caixeta Duarte
Especialista em Redes de Computadores
Linux User #195299
Ribeirão Preto - SP


[As partes desta mensagem que não continham texto foram removidas]

Responder a