A opção -exec para find executa um utilitário externo, possivelmente com alguma opção de linha de comando e outros argumentos.
Seu Unix não fornece cd como um utilitário externo, apenas como um shell embutido, então find falha em executá-lo. Pelo menos o macOS e o Solaris do fornecem cd como um utilitário externo.
Haveria pouco ou nenhum uso para executar cd dessa maneira, exceto como uma forma de testar se o nome do caminho encontrado por find é um diretório no qual você seria capaz de cd . O diretório de trabalho no seu shell interativo (ou o que estiver chamando find ) não mudaria de qualquer maneira.
Relacionados:
- Entendendo a opção -exec de 'localizar'
- Script para alterar o diretório atual (cd, pwd)
- Qual é o objetivo do comando externo 'cd'?
Se você estiver com problemas com o nome de um diretório sendo estranho ou extremamente difícil de digitar e quiser mudar para esse diretório, considere criar um link simbólico para o diretório e, em seguida, cd usando esse link :
find . -inum 888696 -exec ln -s {} thedir ';'
Isso criaria um link simbólico chamado thedir que apontaria para o diretório problemático. Você pode então mudar o diretório de trabalho com
cd thedir
(se o link existir no diretório atual). Isso evita modificar o diretório de qualquer maneira. Outra ideia seria renomear o diretório de maneira semelhante com find , mas isso não seria aconselhável se outro programa esperasse que o diretório tivesse esse nome específico.