Isso está acontecendo por causa da "expansão do nome do caminho" e não está relacionado ao ls
, antes que seus comandos ls
executem o seu "*" será expandido para nomes absolutos, é como se você estivesse executando o comando assim:
ls /path/to/file/1 /path/to/file/2 /path/to/file/3
Função
Crie uma função:
function myls() { basename -a "$@" ;}
Alias
ou crie um alias:
alias myls='basename -a'
Coloque seu .bashrc
ou outro lugar e use-o assim:
myls /boot/vml*
a saída seria:
vmlinuz-4.9.0-3
...