La disponibilité de Hyphen dans le nom d'user UNIX

On dit que dans UNIX et d'autres systèmes similaires, nous pouvons utiliser un trait d'union pour le nom d'user en plus des caractères latins, des caractères numériques et des traits de soulignement. D'autre part, le caractère trait d'union est utilisé comme opérateur dans de nombreux langages de programmation. Sont-ils compatibles les uns avec les autres?

Je me request si les traits d'union dans le nom d'user peuvent parfois être considérés comme un opérateur less et provoquer un comportement involontaire dans certains codes de programme. Si cela pouvait arriver, j'utiliserais le soulignement pour le délimiteur dans le nom d'user.

Merci d'avance pour votre aide.

D'autre part, le caractère trait d'union est utilisé comme opérateur dans de nombreux langages de programmation.

Vrai. Cependant, peu de langage (non?) Interprète les strings littérales et y exécute des opérations aveuglément. Si tel était le cas, nous devrions avoir plus peur des noms d'users traités comme des noms de methods! Le problème est avec les développeurs qui supposent un set restreint de caractères valides.

Si cela /etc/adduser.conf utile, le /etc/adduser.conf de Debian répertorie les caractères autorisés dans les noms d'user: alphabets, nombres, traits d'union et traits de soulignement.

 $ tail /etc/adduser.conf [snip] # check user and group names also against this regular expression. #NAME_REGEX="^[az][-a-z0-9_]*\$" 

Donc, au less une dissortingbution majeure vous soutient. Aller de l'avant.