Sed - ame-o ou deixe-o

separando o ultimo campo de um caminho

O problema

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.

A solução

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='

Um comentário:

Insira seu comentário - O mesmo será submetido à aprovação!

linux-cookbook

Grupos do Google
Participe do grupo linux-cookbook
E-mail:
Visitar este grupo