Não é possível remover o diretório com nome estranho

Não é possível remover o diretório com nome estranho

Ao criar uma nova pasta, não percebi que no BASH 'é um caractere especial, o que significa que acabei com uma pasta chamada

One Flew Over the Cuckoos\ Nest\ \(1975\)?quit?quit()?ls??????????

ou para ser mais preciso

drwxrwxrwx    1 root     root             0 Mar  8 23:21 One Flew Over the Cuckoos\ Nest\ \(1975\)?quit?quit()?ls??????????

o que está deixando meu terminal enlouquecido: o preenchimento da guia não o encontra. Se eu tentar abri-lo através do seu inode, recebo um erro:

LibreELEC:/var/media/MYNAME/Films # rm -r "$(find -inum 187)"
rm: can't remove './One Flew Over the Cuckoos\ Nest\ \(1975\)
quit
quit()
ls': No such file or directory

O quanto eu errei?

Responder1

Resolvido. Fiz isso excluindo-o por meio de seu inode, como tentei no OP, mas agora usando a seguinte linha que ignora completamente o nome do arquivo:

find . -inum 187 -delete

para quem estiver lendo isso, 187 deve ser substituído pelo inode encontrado vials -li

Responder2

Você pode usar a opção interativa em rm. Ele listará cada arquivo e perguntará se você deseja excluí-lo. Assim, você pode curinga apenas os bits que são testes simples:

rm -i *Flew*Cuckoo*Nest*

Isso não funciona para rmdir. Se o diretório estiver vazio, você pode:

rm -ir *Flew*Cuckoo*Nest*

Ou você pode simplesmente renomear o diretório para algo que você possa digitar, desde que você possa corresponder o suficiente para ser único:

mv *Flew*Cuckoo*Nest* BetterCuckooName

informação relacionada