shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Como separar o ultimo campo.


From: Moacir Souza
Subject: Re: [shell-script] Como separar o ultimo campo.
Date: Thu, 4 Nov 2010 18:12:55 -0200

     Wanderson,

     Primeiro gostaria de fazer algumas perguntas, pois a solução que
vou mostrar a seguir pode não ser completa sem conhecer esses
detalhes:

1 - No último item do seu exemplo, o "cp" é um diretório ou um arquivo?
2 - Ou arquivos tem sempre um ponto para separá-los das suas
respectivas extensões?

     E agora o exemplo. Eu gosto de resolver problemas assim usando
uma combinação de cut e rev. Claro que existem outros métodos, mas sou
fã desse em particular porque ele é divertido, criativo e já me ajudou
um bocado. Veja:

1 - O arquivo com os itens:

$ cat a
/dados/teste/uu/eu.sh
/dados/eu/eu.log
/nfs/bin/cp

2 - Os arquivos, ou campos finais

$ rev a | cut -d / -f 1 | rev
eu.sh
eu.log
cp

3 - Os caminhos (ou full paths, como você chamou):

$ rev a | cut -d / -f 2- | rev
/dados/teste/uu
/dados/eu
/nfs/bin

[]'s,
Moacir Filho

2010/11/4 Wanderson Gonzalez <address@hidden>:
> Galera,
> preciso pegar o ultimo campo. Vou explicar, tenho as linhas
>
> /dados/teste/uu/eu.sh
> /dados/eu/eu.log
> /nfs/bin/cp
>
> preciso separar o que é o full path e o que é o arquivo. Tipo:
>
> full=/dados/teste/uu/
> arq=eu.sh
>
> full=/dados/eu/
> arq=eu.log
>
> e por ai vai.
>
> Sendo que podera haver fullpaths de todos os tamanhos..
>
> ja tentei usar o seguinte comando
>
> ls /dados/nfs/nfs.sh |cut -d '/' -f 4-
>
> ai eu consigo pegar o nfs.sh
>
> so que posso ter o seguinte ls /dir1/dir2/dir3/dir/dir5/arquivo
>
> como fazer para que o -f 4- seja auto ajustavel ??
>
> Grato
>
>
>
>
>
>
>
> ------------------------------------
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como 
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em 
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
> Links do Yahoo! Grupos
>
>
>



-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Moacir da Cruz Souza Filho

Analista de Sistemas: Suporte Unix Avançado
Mestrando em Ciências da Computação
Bacharel em Engenharia da Computação
Técnico em Eletrônica
Linux user #449600
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=


reply via email to

[Prev in Thread] Current Thread [Next in Thread]