Email enviado por Mateus Teixeira (08/10/2009):
Essa é pra quem se sente meio perdido nos diretórios do linux.
Explica a hierarquia e o propósito de cada diretório.
http://www.tldp. org/LDP/Linux- Filesystem- Hierarchy/ html/c23. html
Até
Mostrando postagens com marcador linux. Mostrar todas as postagens
Mostrando postagens com marcador linux. Mostrar todas as postagens
quinta-feira, 8 de outubro de 2009
terça-feira, 6 de outubro de 2009
dica - scripts shell
Enviado pelo Mateus Teixeira (27/05/2008):
Pra quem gosta de ficar a par das novidades linuxeiras, em especial
sobre o projeto Fedora, vale a pena dar uma olhada neste site:
http://www.projetof edora.org/ Revista
sobre o projeto Fedora, vale a pena dar uma olhada neste site:
http://www.projetof edora.org/ Revista
É da revista Fedora Brasil. Além de dar novidades e notícias,
a partir da primeira edição (só há duas) eles começaram um
tutorial sobre scripts shell.
a partir da primeira edição (só há duas) eles começaram um
tutorial sobre scripts shell.
Interessante para quem está começando ou pretende se iniciar
neste ambiente.
neste ambiente.
Até.
sábado, 26 de setembro de 2009
duvida_shell_while
Emails enviados em 27 e 28/01/2009:
André Nunes escreveu:
Verminose usuaria do linux,
Olhem o simples loop abaixo e me digam onde estah acaca:
************ ********* ***
xx=0
while ["$xx" -le 4]
do
echo "$xx\c"
xx= `expr $xx + 1`
done
echo
************ ********* **
O erro eh:
./teste.sh: line 2: [0: command not found
Gracias.
Mateus Teixeira escreveu:
Aí cabeça,
Testa esta versão do teu script:
************ ********* *******
#!/bin/bash
xx=0
while [ $xx -le 4 ]
do
echo xx $xx # o mesmo que echo "xx $xx"
let xx+=1 # o mesmo que let xx=xx+1
done
************ ********* *******
Tche, a condição para o teu WHILE deve conter espaço entre os colchetes que a cercam e a variável não precisa ficar entre aspas. Tu a colocas entre aspas quando queres imprimir o seu conteúdo juntamente com um texto qualquer. Vê que neste exemplo nem usei aspas. Com aspas duplas tens o mesmo resultado, mas com aspas simples (o.s., echo 'xx $xx') terás o texto entre elas impresso na tela. A variável não será substituída pelo seu valor.
Pelo que entendi, querias imprimir o valor do teu contador. Quando adicionei os espaços no WHILE e executei o programa, o bicho ficou rodando sem parar. Aí mudei um pouco para fazer o que querias.
O comando LET faz operações aritméticas. Como o próprio manual do BASH fala, é uma versão menos complexa do comando EXPR.
Buenas, acho que era isso!
Hasta,
André Nunes escreveu:
Grande Zeh, gracias.
Este exemplo que pus eh praticamente o mesmo do livro que tenho.
Resolvi fazer um exemplo simples porque era exatamente por
causa de um while que um script nao queria funcionar.
No script que mandei, a falta dos espacos dentro do colchetes
foi esquecimento mesmo, mas a forma como usaste o "let" eu
nunca faria. Eu jah tinha usado o "let" na forma "tradicional"(ex: let x=x+1),
mas nao funcionava.
Bom, jah que ajoelhaste: eh mesmo necessario por o "#!/bin/bash", ou
eh soh pra avisar o tipo de shell que serah executado? Eu suspeito que meu linux executa o Bourne por default, pois nunca inseriesta linha.
Ateh.
Mateus Teixeira escreveu:
Tche,
Se tu usas o Bash por padrão, então não precisas colocar, mas pensas sobre
a possibilidade de rodares este script em outra máquina que não usa o Bash como padrão. Vai dar pau. Pra evitar isso, é melhor colocar o Shel que usarás com o teu script.
Qq coisa é só gritar!
Até
André Nunes escreveu:
Verminose usuaria do linux,
Olhem o simples loop abaixo e me digam onde estah acaca:
************ ********* ***
xx=0
while ["$xx" -le 4]
do
echo "$xx\c"
xx= `expr $xx + 1`
done
echo
************ ********* **
O erro eh:
./teste.sh: line 2: [0: command not found
Gracias.
Mateus Teixeira escreveu:
Aí cabeça,
Testa esta versão do teu script:
************ ********* *******
#!/bin/bash
xx=0
while [ $xx -le 4 ]
do
echo xx $xx # o mesmo que echo "xx $xx"
let xx+=1 # o mesmo que let xx=xx+1
done
************ ********* *******
Tche, a condição para o teu WHILE deve conter espaço entre os colchetes que a cercam e a variável não precisa ficar entre aspas. Tu a colocas entre aspas quando queres imprimir o seu conteúdo juntamente com um texto qualquer. Vê que neste exemplo nem usei aspas. Com aspas duplas tens o mesmo resultado, mas com aspas simples (o.s., echo 'xx $xx') terás o texto entre elas impresso na tela. A variável não será substituída pelo seu valor.
Pelo que entendi, querias imprimir o valor do teu contador. Quando adicionei os espaços no WHILE e executei o programa, o bicho ficou rodando sem parar. Aí mudei um pouco para fazer o que querias.
O comando LET faz operações aritméticas. Como o próprio manual do BASH fala, é uma versão menos complexa do comando EXPR.
Buenas, acho que era isso!
Hasta,
André Nunes escreveu:
Grande Zeh, gracias.
Este exemplo que pus eh praticamente o mesmo do livro que tenho.
Resolvi fazer um exemplo simples porque era exatamente por
causa de um while que um script nao queria funcionar.
No script que mandei, a falta dos espacos dentro do colchetes
foi esquecimento mesmo, mas a forma como usaste o "let" eu
nunca faria. Eu jah tinha usado o "let" na forma "tradicional"(ex: let x=x+1),
mas nao funcionava.
Bom, jah que ajoelhaste: eh mesmo necessario por o "#!/bin/bash", ou
eh soh pra avisar o tipo de shell que serah executado? Eu suspeito que meu linux executa o Bourne por default, pois nunca inseriesta linha.
Ateh.
Mateus Teixeira escreveu:
Tche,
Se tu usas o Bash por padrão, então não precisas colocar, mas pensas sobre
a possibilidade de rodares este script em outra máquina que não usa o Bash como padrão. Vai dar pau. Pra evitar isso, é melhor colocar o Shel que usarás com o teu script.
Qq coisa é só gritar!
Até
Assinar:
Postagens (Atom)