É parte de qualquer padrão (por exemplo, POSIX), que os arquivos do sistema devem estar em minúsculas?

29

Minha empresa revende um aplicativo cuja marca é mista, por exemplo, "ApplicationName".

O instalador do aplicativo cria todos os caminhos e nomes de arquivo neste padrão. Por exemplo. O diretório principal é /opt/ApplicationName , o arquivo init é chamado ApplicationName , então tenho que executar service ApplicationName status e assim por diante.

Para mim, isso quebra todas as convenções sensatas e eu sinto que os arquivos e diretórios devem estar em minúsculas (há precedentes em outros aplicativos como o MySQL, cujos arquivos e diretórios são todos chamados mysql , mesmo aplicativos como Apache e Tomcat elimina a letra maiúscula anterior).

Se eu levantar isso como um relatório de bug, eu gostaria de colocar um argumento mais strong do que apenas "Eu acho que está errado". Então é ditado em algo como o padrão POSIX que arquivos de sistema como esse devem ser minúsculos?

    
por Darren 10.04.2017 / 11:59

3 respostas

27

O padrão POSIX tem uma seção com diretrizes para utilitários em conformidade (por exemplo, "como aqueles escritos especificamente para um sistema local ou que são componentes de um aplicativo maior") que diz

  1. Os nomes de utilitários devem ter entre dois e nove caracteres, inclusive.
  2. Nomes de utilitários devem incluir letras minúsculas (a classificação de caracteres inferiores) e dígitos apenas do conjunto de caracteres portáteis.

[ref: 12.2 Diretrizes da Sintaxe de Utilidade ]

Não está claro para mim se o uso das palavras "deve incluir" realmente significa "deve somente incluir". (O consenso nos comentários abaixo é que significa "deve incluir apenas").

Um aplicativo em um sistema Unix que não reivindica ser um utilitário compatível com POSIX pode usar qualquer nome que desejar. Se faz afirmar ser um utilitário em conformidade com POSIX que faz parte dos utilitários de shell POSIX , o texto após as diretrizes na seção 12.2 diz que "should" muda o significado de " deve ".

Não há nenhuma diretriz semelhante em relação aos nomes de diretório, tanto quanto eu sei. O macOS (que é um produto UNIX 03 certificado quando executado em um computador Mac baseado em Intel) usa /Users como o prefixo para diretórios base do usuário, por exemplo, bem como vários outros nomes de diretórios de casos mistos.

    
por 10.04.2017 / 12:16
44

Não, nomes de letras minúsculas não são especificados para diretórios de instalação de pacotes de software.

Na verdade, historicamente os pacotes de software instalados em /opt começaram com o símbolo de cotação de ações da empresa que fornece o pacote, como SUNW para a Sun Microsystems ou ORCL para Oracle.

Portanto, pacotes como o sistema de arquivos QFS da Sun seriam instalados em um diretório chamado /opt/SUNWqfs .

    
por 10.04.2017 / 12:17
4

Além das diretrizes do POSIX, acho que poderia ter ainda mais peso na tradição do usuário. Os nomes de casos como "ApplicationName" se tornaram populares com a explosão de Wikis, acostumando algumas pessoas (como eu) a usar maiúsculas e minúsculas em vez de hífens, ou pior, espaços. Mas isso foi alguns anos após o Linux e o SO similar se tornarem populares, com uma longa tradição Unix por trás.

Essa tradição tem sido (é) sempre a simplicidade, não apenas seguir as regras que Kusalananda apontou, abreviando palavras de apenas quatro caracteres (por exemplo, /usr para "usuário" ou /srv para " servir "ou /mnt para" montado ") e, obviamente, significados mais longos ( /sbin para" binários superusuário ". Nesta tradição, maiúsculas, forçá-lo a pressionar a tecla Shift, e talvez acidentalmente também a tecla Caps Lock, é simplesmente mal.

Em certa medida, isso é surpreendente porque Unixes tem sido há muito tempo capaz de escrever nomes extensos de maiúsculas e minúsculas, enquanto em contraste, MS-DOS / Windows era limitado a nomes curtos insensíveis a maiúsculas e minúsculas (oito caracteres mais três para a extensão) mas rapidamente perdeu essa simplicidade ("Arquivos de Programas", "Meus Documentos", etc.) quando o Windows 95 ultrapassou essa limitação.

No entanto, hoje existem algumas exceções, como o daemon NetworkManager e, provavelmente, veremos mais WikiWords no futuro. Mas nós ainda odiamos o mouse e escrevemos nos nomes longos do terminal que você pode terminar apenas com a autocompletar Tab Tab . Ou alguém vê alguma vantagem ao renomear vim para VisualImproved ?

    
por 11.04.2017 / 14:53