Comment afficher le contenu dun fichier texte sur la ligne de commande?

Je voudrais afficher le contenu dun fichier texte sur la ligne de commande. Le fichier ne contient que 5 à 6 caractères. Existe-t-il un moyen simple de le faire?

Réponse

Utilisation de cat

Comme votre fichier est court, vous pouvez utiliser cat .

cat filename 

Utilisation de less

Si vous devez afficher le contenu dun fichier plus long, vous pouvez utiliser un pager comme less .

less filename 

Vous pouvez faire en sorte que less se comporte comme cat lorsquil est appelé sur de petits fichiers et se comporte normalement autrement en lui passant le -F et -X.

less -FX filename 

Jai un alias pour less -FX. Vous pouvez en créer un vous-même comme ceci:

alias aliasname="less -FX" 

Si vous ajoutez lalias à votre configuration du shell , vous pouvez lutiliser pour toujours.

Utilisation de od

Si votre fichier contient des caractères étranges ou non imprimables, vous pouvez utiliser od pour examiner les caractères. Par exemple,

$ cat file (ÐZ4 ?o=÷jï $ od -c test 0000000 202 233 ( 320 K j 357 024 J 017 h Z 4 240 ? o 0000020 = 367 \n 0000023 

Commentaires

  • +1, également sed -n l file pourrait être utile.
  • Est-ce que less présente des avantages évidents par rapport aux autres programmes de téléavertisseur comme pg , ou est-ce simplement une question de préférence personnelle?
  • @SamWeinberg: less a plus caractéristiques que pg. Jetez un œil aux less(1) et pg(1) pages de manuel. Il existe également dautres téléavertisseurs. Jetez un œil à unix.stackexchange.com/questions/81129/… . less est probablement le téléavertisseur le plus utilisé, mais celui que vous utilisez dépend de vos préférences personnelles.
  • don ‘ t oublier more et most!

Répondre

Même si tout le monde utilise cat filename pour imprimer un fichier texte sur la sortie standard, le premier objectif est de con cat enating. Depuis la page de manuel de cat:

cat – concatène les fichiers et imprime sur la sortie standard

Désormais, cat est bien pour imprimer des fichiers mais il existe des alternatives:

 echo "$(<filename)" or printf "%s" "$(<filename)" 

Le ( ) retour la valeur dune expression, dans ce cas le contenu de filename qui est ensuite développé de $ pour echo ou printf.

Mise à jour:

< filename 

Cela fait exactement ce que vous voulez et est facile à retenir.

Voici un exemple qui vous permet de sélectionner un fichier dans un menu, puis de l’imprimer.

#!/bin/bash select fname in *; do # Don"t forget the "" around the second part, else newlines won"t be printed printf "%s" "$(<$fname)" break done 

Pour en savoir plus lecture:
BashPitfalls – fichier cat | sed s / foo / bar /> fichier
Référence Bash – Redirection

Commentaires

  • Votre mise à jour:  » < filename est exactement wh à votre guise, …  » est trompeur. Dans lensemble, bien quil sagisse dune discussion intéressante sur les alternatives, je pense que cat est plus simple.
  • Bare < filename ne le fait pas afficher le contenu du fichier, mais cat filename le fait.
  • Vous pouvez également utiliser tee < filename.
  • +1 pour le echo "$(<filename)" bashisme. Pas assez de cela ici.
  • Cette ‘ est une excellente idée pour utiliser la commande interne Linux avec echo "$(<filename)". Merci …

Réponse

Les outils de gestion des fichiers texte sous Unix sont des commandes basiques de tous les jours:

Sous unix et linux pour imprimer tout le contenu du fichier

cat filename.txt 

ou

more filename.txt 

ou

less filename.txt 

Pour les dernières lignes

tail filename.txt 

Pour premières lignes

head filename.txt 

Réponse

Vous pouvez utiliser la commande suivante pour afficher le contenu dun fichier texte.

 cat filename 

Commentaires

  • Pour plus dinformations sur cat, exécutez man cat.

Réponse

Une option consiste à utiliser more

par exemplemore file.txt

Cependant, il na pas toutes les fonctionnalités ajoutées par less.
Un exemple simple est que vous ne pouvez pas « t faire défiler vers le haut dans la sortie. Généralement, il a été dépassé par less – qui a été nommé en plaisantant parce que

less is more

Commentaires

  • Belle explication sur la raison pour laquelle le nom était moins

Réponse

Jutilise toujours $ less "your file here", car cest très simple, fournit un grep, et vous donne une interface facile à utiliser que vous pouvez faire défiler avec les touches fléchées.

(Elle est également incluse sur presque tous les systèmes * nix)

Commentaires

  • less est la version overkill de more (comparez man less avec man more), et pour moi, il a deux caractéristiques ennuyeuses: 1) il bascule vers le tampon décran alternatif, lorsque less se termine, le fichier que vous venez de visualiser disparaît 2) à EOF, vous devez taper explicitement q (je sais, il y a ‘ est une option pour cela). Lune de mes premières actions dans un nouvel environnement consiste donc à définir export PAGER=/bin/more dans mon profil et à utiliser more tout le temps.
  • @ ott–: 1) Essayez lindicateur -X. 2) Essayez lindicateur -E. less a un mode démulation more. Vous pouvez lactiver en définissant la variable denvironnement LESS_IS_MORE. Vous pouvez faire défiler vers le haut en mode démulation more.
  • Voir aussi: unix.stackexchange.com/questions / 81129 / …
  • Bien quen général, je conviens que less est excessivement- compliqué. Sa capacité à exécuter des commandes externes est un parfait exemple de sa sur-complexité.
  • @EvanTeitelman Je ‘ Jai toujours trouvé la fonctionnalité grep extrêmement utile moi-même, @ott – Je trouve cela à cause de lémulation de ‘ de more, et de ‘ s de nombreuses fonctionnalités supplémentaires, il fait très bien le travail.

Réponse

Si cest un gros fichier, et vous voulez rechercher une partie spécifique, vous pouvez utiliser

 cat filename | grep text_to_search -ni 

Vous pouvez également utiliser un éditeur Vim plus interactif (ou un éditeur vi si vous navez pas Vim):

 vim filename Or vi filename

Vim / vi est un excellent éditeur, peut également être utilisé comme lecteur en « Mode normal » ou en utilisant loption -R, il possède de nombreuses fonctionnalités qui vous aidera à parcourir le fichier.

Commentaires

  • Plus court pour vim -R est view. Mais gardez à lesprit quil naime pas les redirections, comme indiqué dans xargs et vi – « Lentrée ne provient pas dun terminal » .
  • merci @manatwork pour la tête haute! Jai récemment commencé à utiliser Vim et je laime bien à cause de ses nombreuses fonctionnalités. En ce qui concerne les redirections, jai oublié cela, merci pour le rappel. Pour le moment, je travaille sur une machine virtuelle distante, où jutilise ssh sans interface graphique, par conséquent, Vim est dune grande utilité, lorsquun autre éditeur graphique ne peut pas fonctionner, que ‘ s pourquoi jai mis laccent sur Vim ici.

Réponse

Utilisez la commande cat pour afficher le contenu du nom de fichier. cat filename

Utilisez la commande vim pour éditer le fichier. nom de fichier vim

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *