étant donné un texte, existe-t-il un programme qui peut détecter ce qu'est le nouveau caractère de ligne, celui de Windows, Mac ou Linux?
Par exemple, le texte suivant est affiché par less
memor: ^ M ^ Mis stockage directement accessible par CPU ^ M ^ MLe terme "mémoire" est souvent (mais pas toujours) associé à la mémoire à semi-conducteur adressable, c'est-à-dire aux circuits intégrés constitués de transistors à base de silicium. ^ MLa mémoire à semi-conducteur est organisée en ^ Cellules mmemory
Je pensais que ^ M est le nouveau caractère de ligne sous Mac. Mais dans emacs, j'ai cherché par Ctrl-q Ctrl-m et je n'ai rien trouvé.
Merci.
file
commandedos2unix
pourrait donner un indice, pourrait également aider.Réponses:
file
rendra compte des fins de ligne pour les fichiers texte. Si vous exécutezfile
sur un fichier texte ASCII Unix / Linux / OSX, par exemple, il signalera simplement:Si, cependant, le fichier a des fins de ligne DOS / Windows, il signalera à la place:
Jusqu'à OS 9, les Mac utilisaient CR comme fin de ligne. Lorsque présenté avec un tel fichier,
file
fera rapport:Avec OSX, les Mac sont convertis en fins de ligne Unix standard.
la source
file
Rapportera- t-il toujours le bon caractère de nouvelle ligne?ASCII text, with CRLF, CR, LF line terminators
.ASCII text, with very long lines
. Les terminateurs sont LFfile
ne mentionne pas quels terminateurs sont utilisés. Voir le premier exemple dans la réponse ci-dessus. Les terminateurs ne sont mentionnés que si le fichier contient des terminateurs non-unix. Voir les deuxième et troisième exemples dans la réponse ci-dessus. Séparément, il est probable que votre fichier comporte une ou plusieurs longues lignes.