Pular para o conteúdo

Comparar arquivos e mostrar o que não corresponde

Responder tópico
  • Denunciar
  • Indicar

1. Comparar arquivos e mostrar o que não corresponde

Enviado em 08/05/2020 - 21:42h

Olá
Como fazer script para que seja exibido o arquivo que não corresponde...
Cada arquivo ".doc" tem seu correspondente. ". ods" , exceto o arquivo "file-456.doc"
$ ls - 1
file-123.doc
file-456.doc
file-222.doc
file-123.ods
file-222.ods
Como criar um script ou comando em loop para exibir somente os arquivos que não correspondem, no caso do exemplo: file-456.doc

Responder tópico

2. Re: Comparar arquivos e mostrar o que não corresponde

Enviado em 08/05/2020 - 23:59h

v aí se te agrada

#!/bin/bash
for x in `ls *.ods|cut -d'.' -f1`;do
if [ ! -e $x.doc ];then
echo "não tem $x.doc"
fi
done
NOTA: o script nesse caso tem que estar no mesmo diretório dos arquivos .ods e .doc


------------------------------------------------------| Linux User #621728 |------------------------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------------------| Linux User #621728 |------------------------------------------------------

3. Re: Comparar arquivos e mostrar o que não corresponde

Enviado em 10/05/2020 - 00:56h


cesarzz escreveu:

Olá
Como fazer script para que seja exibido o arquivo que não corresponde...
Cada arquivo ".doc" tem seu correspondente. ". ods" , exceto o arquivo "file-456.doc"
$ ls - 1
file-123.doc
file-456.doc
file-222.doc
file-123.ods
file-222.ods
Como criar um script ou comando em loop para exibir somente os arquivos que não correspondem, no caso do exemplo: file-456.doc
Boa noite Cesar,
Segue.

ls -1 |cut -d"." -f1|uniq -u
Ou
ls -1 |rev|uniq -s4 -u|rev
Nem é necessário laço, bastante simples.....

______________________________________________________________________
Importante: echo -e "\n$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')\n"
Att.: Marcelo Oliver
______________________________________________________________________

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder