Regex trabalhando no RedHat não está dando nenhum resultado no Ubuntu

Regex trabalhando no RedHat não está dando nenhum resultado no Ubuntu

Meu objetivo é combinar arquivos específicos de subdiretórios específicos. Eu tenho a seguinte estrutura de pastas

`--dados
    |-- uma
    |--a.txt
    |-- b
    |--b.txt
    |--c
    |--c.txt
    |--d
    |--d.txt
    |-- e
    |-- e.txt
    |--org-1
    | |-- a.org
    | |--b.org
    | |--org.txt
    | |-- usuário-0
    | | |--a.txt
    | | |--b.txt

Estou tentando listar os arquivos apenas dentro do diretório de dados. Consigo obter o resultado correto usando o seguinte comando no RHEL

encontre ./testdir/ -iwholename "*/data/[!/].txt"
a.txt
b.txt
c.txt
d.txt
e.txt

Se eu executar o mesmo comando no Ubuntu, ele não funcionará.

Alguém pode me dizer por que não está funcionando no Ubuntu?

Editar:

Após alguns testes percebi que conforme meu post ele está funcionando corretamente tanto no RHEL quanto no Ubuntu. O problema está em outro lugar. Os arquivos que tenho no meu sistema Ubuntu são arquivos de dados.

É muito estranho que para esses tipos de arquivo não esteja listado no RHEL e no Ubuntu.

[supratik@testserver ~]$ ls testprog/data/
a.txt dados.dat

[supratik@testserver ~]$ arquivo testprog/data/a.txt
testprog/data/a.txt: texto ASCII

[supratik@testserver ~]$ arquivo testprog/data/data.dat
testprog/data/data.dat: dados

[supratik@testserver ~]$ find ./testprog/ -iwholename "*/data/[!/].txt"
./testprog/data/a.txt

[supratik@testserver ~]$ find ./testprog/ -iwholename "*/data/[!/].dat"

Responder1

Acabei de verificar isso no CentOS 5.6,6.0 e Ubuntu 9.04,10.04 e 11.04 e obtive a mesma resposta em todos eles, viz

find  ./testdir/ -iwholename "*/data/[!/].txt"
./testdir/data/c.txt
./testdir/data/d.txt
./testdir/data/a.txt
./testdir/data/e.txt
./testdir/data/b.txt

Você pode obter resultados semelhantes com

Find ./testdir/data/ -maxdepth 1 -name '*.txt'

informação relacionada