Não, não é uma boa prática, você deve manter seus scripts sem extensão. Note que os scripts que fazem parte dos pacotes não têm uma extensão .sh , ou seja, update-grub , não update-grub.sh . Se você ainda não estiver convencido, então seja avisado que o Guia de estilo do Google Shell diz:
Os executáveis não devem ter nenhuma extensão (strongmente preferida) ou uma extensão .sh. As bibliotecas devem ter uma extensão .sh e não devem ser executáveis.
PS Você não precisa colocar seu script em /bin
. Você pode criar o diretório ~/bin
e colocar seu script lá. O diretório ~/bin
é incluído em $PATH
por padrão, portanto, os scripts colocados lá podem ser executados como qualquer outro comando shell.