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

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

Re: Como separar o ultimo campo.


From: Sérgio
Subject: Re: Como separar o ultimo campo.
Date: Fri, 05 Nov 2010 11:32:00 -0000
User-agent: eGroups-EW/0.82

Encontrei uma solução com sed

sed -i.backup -r  's,(.*/)(.*),full=\1 \narq=\2,'  arquivo

use '-i' para alterar diretamente o arquivo com o sed, com 
-i.backup ele gera um backup antes


troquei o delimitador para não confundir com as barras 
veja  sed -

r ............. expressões regulares extendidas
(.*/) ......... grupo 1 tudo até a ultima barra
(.*) .......... grupo 2 nome do arquivo
\1 ............ coloca o grupo 1 no local indicado
\2 ............ coloca o grupo 2 no local indicado
\n ............ note o \n antes de 'arq='



--- Em address@hidden, Wanderson Gonzalez <wandersongonzalez@...> escreveu
>
> 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
>




reply via email to

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