J'utilise la ligne de commande fréquemment pour parcourir mes fichiers, donc j'essaie de ne pas avoir d'espaces dans les noms de fichiers. En règle générale, j'ai utilisé un trait de soulignement pour connecter les mots, mais il a récemment été suggéré d'utiliser un tiret. Y a-t-il des inconvénients à utiliser un trait de soulignement dans les noms de fichiers? Dois-je passer à un tiret? Mon système exécute Xubuntu et j'utilise presque exclusivement le shell bash.
Merci
{...}
. En cas de script automatique, vous devriez le considérer. Le_
est utilisé pour créer un indice et doit être inclus par exemple dans$...$
pour éviter les erreurs, mais il générera un texte différent de ce que vous attendez. Dans le terminal amélioré de gnuplot aussi ..Réponses:
En ce qui concerne le système d'exploitation, ils sont tous deux aussi utilisables les uns que les autres.
Une chose que je voudrais noter - certains logiciels (tels que certains systèmes de lecture vidéo - XBMC, etc.) remplaceront automatiquement les traits de soulignement par des espaces lors de l'affichage des fichiers pour les rendre plus beaux.
Pour cette seule raison, je serais tenté de m'en tenir aux soulignements.
En outre, les tirets sont utilisés pour les commutateurs de commandes, il peut donc être un peu déroutant d'avoir des traits d'union dans vos noms de fichiers ainsi que dans vos commutateurs de commande.
A part cela, c'est uniquement dû à un choix personnel.
la source
Dash ne vous oblige pas à appuyer sur MAJ, ce qui signifie que vous tapez plus rapidement. C'est le seul autre avantage auquel je puisse penser au-dessus de ce que M. Jenkins a suggéré.
Il est probable que la personne qui fait cette suggestion est un utilisateur passionné de Vim et souhaite tout faire avec le moins de mouvements de clavier.
la source
vi
place - une frappe de moins;)alias
dev
toute façon ;-)FOO_BAR
(je n'utilise pas de verrouillage des majuscules, il est donc agréable de pouvoir maintenir Shift enfoncé tout le temps).g
pourgit
:)Ma recommandation est d'utiliser des traits de soulignement au lieu d'espaces. Les traits de soulignement sont généralement la convention que les gens utilisent lors du remplacement des espaces, bien que les tirets soient également très bien, je dirais. Mais étant donné que les tirets peuvent apparaître d'autres façons, comme les mots avec trait d'union, vous aurez plus de succès à conserver une valeur de nom en utilisant des traits de soulignement. Par exemple, si vous avez un fichier appelé "Une photo prise à Winston-Salem, NC.jpg" et que vous souhaitez convertir les espaces en traits de soulignement, vous pouvez conserver le trait d'union dans le nom et conserver sa signification.
Les espaces causent des problèmes aux personnes qui souhaitent utiliser la ligne de commande de manière avancée, comme dans les boucles for comme celle-ci:
Si l'un des fichiers mp3 correspondant à ce caractère générique a des espaces dans leur nom, cela entraînera la décomposition du nom de fichier en sections au lieu de l'ensemble. Vous pouvez contourner cela en changeant la variable IFS du shell BASH ou en utilisant la commande find, mais c'est une gêne et beaucoup de gens ne le savent pas, donc cela peut causer des problèmes.
Je doute que cela ou même une campagne d'autocollants pour pare-chocs empêcherait les gens de mettre des espaces dans les noms de fichiers, mais si vous voulez vous aider, plus de pouvoir pour vous et merci au nom de ceux d'entre nous qui se soucient.
la source
\0
ou\\\`. Coding to anything less than that is broken by design. So, no, it shouldn't choke on spaces, or EOL, or non-ASCII characters, or anything that isn't
\ 0` ou `\`. L'utilisation de fonctions de bibliothèque pour la manipulation de chemin de fichier est la voie à suivre, car de nombreuses autres personnes ont déjà résolu ces problèmes.La seule raison pour laquelle vous devriez envisager d'utiliser des tirets au lieu de traits de soulignement est la lisibilité de base. Les soulignements fréquents ont tendance à fausser la lecture, car cela change la ligne de votre vision du centre de l'axe des Y vers le bas. Les traits d'union le rendent cependant plus agréable à l'œil.
En ce qui concerne le système d'exploitation, les deux caractères sont également valides et ne nécessitent pas de s'échapper (quels espaces le font, et donc sont difficiles à travailler).
la source
Personnellement, je préfère les tirets au trait de soulignement car vous n'avez pas besoin de maintenir la touche Maj enfoncée pour eux. Mais une chose à retenir est que si vous faites principalement du codage python - et que votre arbre de code contient des fichiers / répertoires avec un trait d'union et que vous avez l'intention de les utiliser comme modules (faites un nom de fichier importé dans votre code), cela provoquera des erreurs car les modules python ne peuvent pas contenir de trait d'union. Bien sûr, il existe des façons détournées d'importer des modules qui ont un trait d'union, mais je m'en tiendrai au trait de soulignement car il suit également les directives PEP-8.
Donc, pour la plupart de mes bacs / programmes ou alias, j'utilise des tirets, mais quand il s'agit d'écrire des programmes / modules python - j'utilise des traits de soulignement.
la source
Il y a de bonnes raisons d'utiliser des traits d'union dans tout contexte Web mappé à un système de fichiers Unix.
En tant que développeur Web, cela m'a obligé à rester avec des tirets lors de la séparation des mots.
la source