![]() |
|
|
google unix.com
|
|||||||
| Fóruns | Registar | Fórum Regimento | Ligações | Álbuns | FAQ | Lista deputados | Calendário | Pesquisa | Today's Posts | Mark Forums Read |
| Programação Shell Script e Post perguntas sobre ksh, CSH, SH, BASH, Perl, PHP, SED, Awk e outros scripts shell e shell scripts línguas aqui. |
Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
|
||||
| Fio | Thread Starter | Fórum | Respostas | Última postagem |
| concatenar todas as linhas duplicadas em um arquivo. | vaskarbasak | Programação Shell Script e | 30 | 08-29-2008 06:31 |
| leitura arquivo texto linha por linha | MizzGail | Programação Shell Script e | 6 | 04-14-2008 07:58 |
| Eliminar IPs duplicados a partir de um arquivo texto | coolkid | Programação Shell Script e | 4 | 01-24-2008 07:22 |
| Registros duplicados de oráculo para arquivo de texto. | shilendrajadon | UNIX & avançada para usuários experientes | 1 | 01-10-2008 11:21 |
| paginação um arquivo texto linha por linha? | tomapam | UNIX para Dummies Perguntas & Respostas | 2 | 10-07-2002 10:30 |
![]() |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
|
|
||||
|
duplicado linha em um arquivo texto
Gostaria de varredura para as linhas duplicadas no arquivo, e imprimir os duplicados para outro ficheiro,
Ah e tem de ser insensível caso. exemplo linha1 linha2 linha2 Linha3 Line4 Line4 outputfile: linha2 Line4 quaisquer ideias |
|
||||
|
Código:
perl -ne '$l = lc(); print if $m{$l}++; ' file
lc retorna a string especificada em minúsculas; neste caso, sem qualquer parâmetro, o padrão para a atual linha de entrada. $ $ l (m) é a contagem do número de vezes que vimos $ l; se é não zero, é uma duplicata, por isso, imprimi-lo. Última edição por época; em 04/25/2008 02:50.. Motivo: Adicionar explicação |
|
||||
|
Citação:
thanks it's trabalhou para um arquivo, mas esqueci-me de acrescentar que, se eu precisar dele para ser executado em um diretório e certifique-se de fazer em um único arquivo e não subdirectório modificações que você faria |
|
||||
|
Loop mais arquivos em um diretório, e remover duplicatas? Você deseja substituir os arquivos? Código:
for f in directory/*; do
test -d "$f" && continue # skip if it's a subdirectory
perl -ne '$l = lc(); print if $m{$l}++; ' "$f" >"$f.tmp"
mv "$f.tmp" "$f"
done
|
![]() |
| Marcadores |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|