Que sequência de caracteres não devo permitir em um nome de arquivo?

Descobri depois de testar que o Linux permite qualquer caractere em um nome de arquivo, exceto/ e nulo (\0) Então, qual sequência não devo permitir em um nome de arquivo? Eu ouvi um líder- pode confundir alguns programas de linha de comando, o que não importa para mim, no entanto, pode incomodar outras pessoas se decidirem coletar vários arquivos e filtrá-los com alguns programas GNU.

Foi-me sugerido remover espaços à esquerda e à direita, e pretendo fazê-lo apenas porque normalmente o usuário não quer ter espaço à esquerda / à direita.

Que sequência problemática pode existir e qual sequência devo considerar não permitir? Também estou pensando em não permitir caracteres ilegais no Windows apenas por conveniência. Acho que posso não permitir traços no início (traço é um caractere de janela legal)

questionAnswers(6)

yourAnswerToTheQuestion