+ Responder ao Tópico



  1. #1

    Padrão script com read

    ola pessoal, to numa duvida cruel
    sabemos que pra fazer com que um shell script ao ser rodado capture o que vc esta digitando e depois imprimir onde queira e facil basta umas simples linhas como por exemplor:
    Código :
    printf "Digite seu nome: /n"
    read nome
    echo "$nome"

    mas minha duiva e o seguinte:
    como faco um shell script captura os dados junto ao executar o script como por exemplo

    ./meuscript.sh 2525
    como fazer ele pegar esse numero 2525 que foi digitado ao lado do script e fazer com que esses numeros seja impreso dentro desse escript e como se fosse um input no php ele vai capturar o numero 2525 e vai rodar alguma funcao com ele.
    desde ja grato

  2. #2

    Padrão

    cara você ta querendo pegar o parametro passado para o script e passar ele para uma função que esta dentro do script?

  3. #3

    Padrão

    por ai
    tipo digamos que digitel ./meuscript emc o script vai capturar o paramentro emc e rodar uma funcao usando esse parametro emc
    como por exemplo
    mkdir /home/emc
    mkdir /var/emc

  4. #4

    Padrão

    Daeee kra...

    Você poderia fazer da seguinte forma usando o read

    Código :
    #!/bin/bash
     
    function executa() {
    mkdir -p /home/$1
    mkdir -p /var/$1
    }
     
    echo -n "Digite seu parametro: "
    read param
     
    executa $param;

    Tenta ai... ve se isso ajuda você!!
    Abraço!!

  5. #5

    Padrão

    Em shell-script, os parâmetros passados pelo script são atribuídos a variáveis especiais chamadas $1, $2, $3,...,$n. Exemplo:

    Se você chama um script qualquer dessa maneira:

    Código :
    # ./meuscript bla ble bli blo blu

    Dentro dele, você pode utilizar os valores de seus parâmetros da seguinte maneira:

    Código :
    $1 = bla
    $2 = ble
    $3 = bli
    $4 = blo
    $5 = blu

    Abraços!