Duvida de Script [RESOLVIDO]

1. Duvida de Script [RESOLVIDO]

Letícia Matsumoto
leticiaMatsumoto

(usa Debian)

Enviado em 22/04/2008 - 11:18h

oi pessoal
= )
gostaria de saber se algm pode me explicar como q faço para q um script q liste os arquivos q estão na mesma pasta q ele

arigatou
;)


  


2. MELHOR RESPOSTA

Elgio Schlemer
elgio

(usa OpenSuSE)

Enviado em 22/04/2008 - 12:02h

O que ela quer é que o script liste os arquivos de onde ele está e não de onde foi chamado.

#!/bin/bash

ls -la `dirname $0`

Se o script estiver em /usr/bin, sempre que o executar ele irá listar os arquivos de /usr/bin, mesmo que eu o chame de /home

E o script listaria os de /usr/local/sbin se estivese lá.

Por isto que usei o $0

Este parâmetro nada mais é do que o path e nome do que se executou. Se eu chamo:

$ lixo.sh

E lixo estiver em /usr/local/bin o $0 dele será /usr/local/bin/lixo.sh (facilmente mostrado com um echo $0).

Logo, ao extrair o dirname de $0 está-se sempre pegando o diretório onde o script está. Então basta um ls -la `dirname $0` como mencionei.


3. Re: Duvida de Script [RESOLVIDO]

Marcos Miras
marcosmiras

(usa CentOS)

Enviado em 22/04/2008 - 11:32h

Crie um arquivo com o seguinte conteúdo
#!/bin/bash
local=`pwd`
ls $local


Ou simplesmente
#!/bin/bash
ls


4. Re: Duvida de Script [RESOLVIDO]

Letícia Matsumoto
leticiaMatsumoto

(usa Debian)

Enviado em 22/04/2008 - 11:40h

bem...
isso eu já tinha tentado...
o problema é q isso retorna os arquivos do diretório q eu invoquei o script...
eu precisava mesmo é de um q retorna-se os arquivos do msm diretório do script

msm assim obrigada pela atenção
^^
se souber outra solução


5. Tente isto:

Elgio Schlemer
elgio

(usa OpenSuSE)

Enviado em 22/04/2008 - 11:46h

#!/bin/bash

ls -la `dirname $0`



6. Re: Duvida de Script [RESOLVIDO]

Francisco Ambrozio
fco

(usa Slackware)

Enviado em 22/04/2008 - 11:52h

Num intindi... :-)

"eu precisava mesmo é de um q retorna-se os arquivos do msm diretório do script"

Aí é uma questão de onde está o script, correcto?

Bom, de qualquer forma você pode listar o conteúdo de qualquer diretório que quiser.

#!/bin/bash

ls -l $1 > /tmp/lista$$.txt

Aí é só invocar o script com a opção que desejar. Ex.:

script /home/vivaolinux

Depois confira o resultado no arquivo /tmp/lista*.txt

:-)


7. Re: Duvida de Script [RESOLVIDO]

Francisco Ambrozio
fco

(usa Slackware)

Enviado em 22/04/2008 - 12:07h

Sábio professor!

:-)


8. outra maneira

Perfil removido
removido

(usa Nenhuma)

Enviado em 23/04/2008 - 00:34h

#!/bin/bash

ls -lha ./

exit

-l lista completa
-h (human mode) mostra em formato KB MB GB etc ou seja, mais fácil para nossa cabeça animal ler
-a (all) todos






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts