Alyson Franklin alysonfranklinreal@gmail.com [shell-script]
2017-03-22 03:20:07 UTC
Fala Mestre Julio e Cia, beleza?
Então, conheço/trabalho com linux mais ou menos 3 anos, e esses dias
comprei seu livro "*10° edição de programação shell script*".
Em uma semana lendo o livro (ainda estou na página 218) consegui fazer
alguns scripts que me ajudaram muito no dia a dia, principalmente porque
trabalho muito com logs/históricos gigantescos.
Em uma das páginas de seu livro, tinha o seguinte script:
#!/bin/bash
if who | grep $1 > /dev/null
then
echo $1 esta logado
else
echo $1 não esta logado
fi
Beleza, fiz esse mesmo script na minha maquina e tive um resultado não
esperado que meu deixou confuso:
Resultado da execução do script:
*Uso: grep [OPÃÃO]... PADRÃO [ARQUIVO]...*
*Experimente "grep --help" para mais informações.*
*não esta logado*
O resultado foi exatamente este citado acima. Ele informou "não está
logado" sem o nome do usuário que está e/ou não está logado e ainda me
exibiu o help do grep.
Gostaria de saber por que isso aconteceu ??
Eu já coloquei a váriavel "$1" entre aspas e tive apenas isso como
resultado:
não esta logado (mais uma vez sem o nome do usuário).
*Versão do meu bash: 4.3.11(1)-release-(x86_64-pc-linux-gnu)*
Desde já agradeço a ajuda de todos.
Então, conheço/trabalho com linux mais ou menos 3 anos, e esses dias
comprei seu livro "*10° edição de programação shell script*".
Em uma semana lendo o livro (ainda estou na página 218) consegui fazer
alguns scripts que me ajudaram muito no dia a dia, principalmente porque
trabalho muito com logs/históricos gigantescos.
Em uma das páginas de seu livro, tinha o seguinte script:
#!/bin/bash
if who | grep $1 > /dev/null
then
echo $1 esta logado
else
echo $1 não esta logado
fi
Beleza, fiz esse mesmo script na minha maquina e tive um resultado não
esperado que meu deixou confuso:
Resultado da execução do script:
*Uso: grep [OPÃÃO]... PADRÃO [ARQUIVO]...*
*Experimente "grep --help" para mais informações.*
*não esta logado*
O resultado foi exatamente este citado acima. Ele informou "não está
logado" sem o nome do usuário que está e/ou não está logado e ainda me
exibiu o help do grep.
Gostaria de saber por que isso aconteceu ??
Eu já coloquei a váriavel "$1" entre aspas e tive apenas isso como
resultado:
não esta logado (mais uma vez sem o nome do usuário).
*Versão do meu bash: 4.3.11(1)-release-(x86_64-pc-linux-gnu)*
Desde já agradeço a ajuda de todos.