Você não pode citar *
se espera que ele aja como um curinga. Ambas aspas simples e duplas escapam.
As aspas duplas também escapam de aspas simples, então toda a sua string *\'*
será tomada literalmente:
$ echo "*\'*"
*\'*
Você deseja escrever sua string sem as aspas duplas, como escreveu mais tarde em sua pergunta:
ls -l *\'*
Outra maneira de fazer isso que pode ser mais adequada para você é com o comando find
. (que não segue as mesmas regras de citação acima, desculpe a confusão). Com o find você pode pesquisar uma estrutura de diretório recursivamente muito mais fácil para qualquer arquivo que contenha uma aspa simples com o comando abaixo:
find . -name "*'*"
Neste exemplo, .
significa o diretório em que você está atualmente, mas você pode substituí-lo por um caminho para qualquer diretório que deseja pesquisar.