Não sei exatamente se essa é uma pergunta "correta" para postar aqui. Provavelmente estou perguntando mais sobre "opiniões" do que respostas categóricas reais (daquelas que funcionam ou não, e é isso).
Eu queria saber qual separador de nomes seria o mais amigável para Linux (ou mais especificamente, amigável para Bash ) e amigável para humanos ao mesmo tempo.
Digamos que eu queira criar um diretório que contenha algo relacionado ao Sr. Foo Bar ( Foo sendo o primeiro nome, Bar sendo o sobrenome)
Ter o nome " Foo-Bar/
" é muito conveniente. -
é um personagem "regular", não precisa ser escapado, mostra claramente isso Foo
e Bar
são duas coisas separadas ... Legal.
Agora, " Foo.Bar
" é um pouco mais complicado. Alguém pode pensar que Foo.Bar
na verdade é um arquivo (à primeira vista, especialmente se você não tiver terminais com cores ativadas), onde " Foo
" é o nome do arquivo e " Bar
" a extensão.
Eu também poderia usar " Foo Bar
", mas preciso escapar do espaço em branco quando quiser acessar o diretório e, se desejar listar o conteúdo do diretório pai (onde Foo Bar
está localizado) e colocar a lista em um array bash, o espaço em branco vai causar problemas (muito). Não é legal.
Os colchetes ()
também causam muitos problemas. Eles também precisam ser escapados e causar problemas com comandos como scp
... Nada legal.
Então ... a pergunta (finalmente) é: se você precisa deixar claro e significativo o nome de um arquivo à primeira vista e usar separadores, o que você usa?