adicionando nome em todas as linhas!

1. adicionando nome em todas as linhas!

edgar
edgaroliveirace

(usa Ubuntu)

Enviado em 12/11/2013 - 17:24h

ola pessoal gostaria de saber como faço para adicionar um nome em todas as linhas

#!/bin/bash

hostname="NOME_A_ADICIONAR"

cat arquivo.txt | while read Linha; do
sed -i "1 s/^/$hostname/" $Linha

done


exit

arquivo é assim

| 00:15:6D:18:6C:25 | -65 | 98 | -87
| DC:9F:DB:E6:03:E3 | -71 | 90 | -87
| DC:9F:DB:7C:84:78 | -69 | 98 | -87


gostaria que ficasse assim

NOME_A_ADICIONAR| DC:9F:DB:0A:32:A9 | -67 | 99 | -87
NOME_A_ADICIONAR| 00:27:22:36:8B:1C | -78 | 79 | -87
NOME_A_ADICIONAR| DC:9F:DB:18:21:EB | -75 | 80 | -87




  


2. Re: adicionando nome em todas as linhas!

Fernando
phoemur

(usa Debian)

Enviado em 12/11/2013 - 20:51h

não precisaria de script pra fazer isso, basta um

sed 's/^/NOME_A_ADICIONAR &/g' arquivo.txt


ou se quiser alterar diretamente o arquivo use a opção -i do sed

sed -i 's/^/NOME_A_ADICIONAR &/g' arquivo.txt


agora se for script faz assim:

#!/bin/bash

hostname="NOME_A_ADICIONAR"

sed -i "s/^/$hostname &/g" arquivo.txt

# outra alternativa seria:
#
# eval "sed -i 's/^/$hostname &/g' arquivo.txt"
#
# contudo não use o comando eval com dados entrados pelo usuário pois
# torna seu script vulnerável a shell injection





3. adicionando nome em todas as linhas!

edgar
edgaroliveirace

(usa Ubuntu)

Enviado em 13/11/2013 - 09:13h

vlw mano adaptei aqui e deu so o file!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts