The UNIX and Linux Forums  
Olá e boas-vindas de Estados Unidos para o UNIX e Linux Forum! Obrigado por visitar e fazer parte da nossa comunidade global.

Go Back   O UNIX e Linux Forum > Top Fóruns > UNIX para Dummies Perguntas & Respostas
.
google unix.com



UNIX para Dummies Perguntas & Respostas Se não tiver certeza de onde se pode postar uma pergunta Unix ou Linux, postá-lo aqui. Todos os UNIX e Linux novatos bem vindos!

Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
Fio Thread Starter Fórum Respostas Última postagem
Múltiplas pesquisas em vários arquivos maxvirrozeito Programação Shell Script e 2 12-13-2007 01:32
cd para vários diretórios e arquivos dentro gzipping sunsysadm2003 Programação Shell Script e 0 10-30-2007 05:50
obter ficheiros a partir de múltiplos diretórios usando o FTP amit1209 Programação Shell Script e 2 09-26-2007 09:39
copiar vários arquivos em diferentes diretórios ken2834 UNIX para Dummies Perguntas & Respostas 3 03-25-2007 01:35
FTP vários arquivos em diferentes diretórios abrd600 Programação Shell Script e 12 09-23-2004 07:56

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback Thread Tools Pesquisar este Thread Rate Thread Display Modes
  #1 (permalink)  
Old 10-25-2006
ravikirankethe ravikirankethe is offline
Usuário
  
 

Join Date: Oct 2006
Localização: NewYork
Lugares: 21
Procurar arquivos em vários diretórios

Quero procurar por um arquivo padrão em mais de um diretório. Como eu preciso fazer isso?

Aqui é o cenário:

Estou tendo uma estrutura de diretório como o seguinte:
/ log
...../20051001
.......... ftp_server_20051001.log
.......... ftp_down_server.log
.......... ftp_up_server.log
...../20051101
.......... ftp_server_20051101.log
...../20051201
.......... ftp_down_server.log
.......... ftp_up_server.log
...../20060101
.......... ftp_down_server.log
.......... ftp_up_server.log
...../20060201
.......... ftp_server_20060201.log
...../20060301
.......... ftp_down_server.log
.......... ftp_up_server.log
.......... ftp_server_20060201.log
...../20060401
.......... ftp_down_server.log
.......... ftp_up_server.log

Eu quero saber todos os registros que começam com "ftp_server" no
ano de 2006 a partir do diretório log.
Pode ajudar-me a uma cerca com o comando?

Eu costumava tentar gosta: $ find. nome-do-2006 * / ftp_server *. É mencionada apenas uma
informações do arquivo e fecha com algum erro. Eu estou olhando para todos os arquivos

Obrigado,
Ravi

Última edição por ravikirankethe; em 10/25/2006 04:03..
  #2 (permalink)  
Old 10-25-2006
Corona688 Corona688 is offline
Usuário
  
 

Join Date: Aug 2005
Localização: Saskatchewan
Posts: 1.933
O nome-do-opção especifica o nome do arquivo, não o caminho.

Se houver um pequeno número deles que você pode fazer isso com casca globbing:
Código:
ls 2006*/ftp_server*
Caso contrário, você pode encontrar e fazer isto com o grep:
Código:
 find . -iname 'ftp_server*' | grep 2006
  #3 (permalink)  
Old 10-25-2006
ravikirankethe ravikirankethe is offline
Usuário
  
 

Join Date: Oct 2006
Localização: NewYork
Lugares: 21
Acho que o comando necessita de ser parecido com isto:
encontrar. -name 'ftp_server * "| grep 2006

Este comando está a ter sobre a cabeça de puxar o
informações do arquivo de todas as pastas e, em seguida, greps apenas para 2006.

As despesas gerais aqui é pesquisar todos os arquivos e não quero estreito
a pesquisa a pesquisa apenas em 2006 * pastas.

Podemos conseguir isso?
  #4 (permalink)  
Old 10-25-2006
Corona688 Corona688 is offline
Usuário
  
 

Join Date: Aug 2005
Localização: Saskatchewan
Posts: 1.933
encontrar tem opções relacionadas com o presente, mas eles são todos depreciado por razões de segurança. Podemos fazer isso, com certeza, mas provavelmente não em um comando. Aqui temos "localizar" localizar diretórios começando com 2006, e bash localizar arquivos dentro delas começa com ftp_server. A 2> / dev / null redireciona mensagens de erro para / dev / null para diretórios sem ftp_server * arquivo em si.

Código:
find . -mindepth 1 -maxdepth 1 -type d -name '2006*' |
        while read DIR
        do
                ls ${DIR}/ftp_server*
        done 2> /dev/null

Última edição por Corona688; em 10/25/2006 06:09..
  #5 (permalink)  
Old 10-26-2006
ravikirankethe ravikirankethe is offline
Usuário
  
 

Join Date: Oct 2006
Localização: NewYork
Lugares: 21
Thanks for all your help. Eu tenho um comando simples:
Encontrar $ 2006 * / nome-do-ftp_server *
  #6 (permalink)  
Old 10-26-2006
Corona688 Corona688 is offline
Usuário
  
 

Join Date: Aug 2005
Localização: Saskatchewan
Posts: 1.933
Se isso vai funcionar, então assim o LS 2006 * / * I ftp_server sugeriu, em primeiro lugar. A solução tem a mesma ressalva - demasiados directórios irá exceder o comprimento máximo de comando do seu shell.
Closed Thread

Marcadores

Thread Tools Pesquisar este Thread
Pesquisar este Thread:

Pesquisa Avançada
Display Modes Esta taxa Thread
Esta taxa Thread:

Destacamento Regimento
Você não pode postar novas threads
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar suas postagens

BB code é Ligado
Smilies são Ligado
[IMG] código é Ligado
Código HTML é Desligado
Trackbacks são Ligado
Pingbacks são Ligado
Refbacks são Ligado




Todos os horários são GMT -4. A hora é agora 03:34.


Powered by: vBulletinCopyright © 2000 - 2006, Jelsoft Enterprises Limited. Língua Traduções Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
O UNIX e Linux Fóruns Content Copyright © 1993-2009. Todos os Direitos Reserved.Ad Gestão por RedTyger

Content Relevant URLs por vBSEO 3.2.0