Je voudrais afficher le contenu d'un fichier texte sur la ligne de commande. Le fichier ne contient que 5-6 caractères. Y a-t-il un moyen facile de faire ceci?
Je voudrais afficher le contenu d'un fichier texte sur la ligne de commande. Le fichier ne contient que 5-6 caractères. Y a-t-il un moyen facile de faire ceci?
Réponses:
catDepuis votre fichier est court, vous pouvez utiliser
 cat.
cat filename
lessSi vous devez afficher le contenu d'un fichier plus long, vous pouvez utiliser un pageur tel que
 less.
less filename
Vous pouvez vous lesscomporter comme catsi vous étiez invoqué dans de petits fichiers et vous comporter normalement sinon en lui passant les indicateurs -Fet -X.
less -FX filename
J'ai un alias pour less -FX. Vous pouvez en faire un comme vous-même:
alias aliasname='less -FX'
Si vous ajoutez l'alias à votre configuration shell , vous pouvez l'utiliser indéfiniment.
odSi votre fichier contient des caractères étranges ou non imprimables, vous pouvez utiliser
 odpour 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
less- il des avantages évidents par rapport aux autres programmes de téléavertisseurs pg, ou est-ce que cela se résume à vos préférences personnelles?
                    lessa plus de fonctionnalités que pg. Jetez un oeil à la less(1)et pg(1)manpages. Il y a aussi d'autres téléavertisseurs. Jetez un coup d’œil à unix.stackexchange.com/questions/81129/… . lessest probablement le téléavertisseur le plus utilisé, mais celui que vous utilisez dépend de vos préférences personnelles.
                    moreet most!
                    Même si tout le monde utilise cat filenamepour imprimer un fichier texte à la sortie standard premier but est con cat enating. De la page de manuel du chat:
cat - concaténer des fichiers et imprimer sur la sortie standard
Maintenant, cat est bien pour imprimer des fichiers, mais il existe des alternatives:
  echo "$(<filename)"
or
  printf "%s" "$(<filename)"
Le ( )retourne la valeur d'une expression, dans ce cas le contenu du nom de fichier qui est ensuite développé par $pour echoou 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: 
BashPitfalls - Fichier cat | fichier sed s / foo / bar /> fichier 
Bash Reference - Redirecting
< filenameest exactement ce que vous voulez, ..." est trompeuse. Dans l’ensemble, bien qu’il s’agisse d’une discussion intéressante sur les solutions de rechange, je pense que catc’est plus simple.
                    < filenamen'affiche pas le contenu du fichier, mais le cat filenamefait.
                    tee < filenameaussi.
                    echo "$(<filename)"bashisme. Pas assez de ça ici.
                    "$(<filename)". Merci ...
                    Les outils de gestion de fichiers texte sous Unix sont des commandes de base 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 les premières lignes
head filename.txt
Une option consiste à utiliser more
par exemple more file.txt
Cependant, il n'a pas toutes les fonctionnalités ajoutées par less. 
Un exemple simple est que vous ne pouvez pas revenir en arrière dans la sortie. Généralement, il a été surpassé par less - nommé en plaisanterie parce que
moins est plus
J'utilise toujours $ less "your file here", car c'est très simple, une grepcommande interactive intégrée et une interface facile à utiliser que vous pouvez faire défiler à l'aide des touches fléchées.
(Il est également inclus sur presque tous les systèmes * nix)
lessest la version overkill de more(comparer man lessavec man more), et pour moi il a deux fonctionnalités gênantes: 1) il bascule vers le tampon d’écran alternatif, quand moins de temps se termine, le fichier que vous venez de regarder disparaît 2) à EOF vous devez taper explicitement q(Je sais, il y a une option pour cela). Une de mes premières actions dans un nouvel environnement est donc de définir export PAGER=/bin/moreet d’utiliser moretout mon temps dans mon profil .
                    -Xdrapeau. 2) Essayez le -Edrapeau. lessa un moremode d'émulation. Vous pouvez l'activer en définissant la LESS_IS_MOREvariable d'environnement. Vous pouvez faire défiler vers le haut en moremode émulation.
                    lessc'est trop compliqué. Sa capacité à exécuter des commandes externes est un exemple parfait de sa complexité excessive.
                    more, et de nombreuses fonctionnalités supplémentaires, elle fait très bien son travail.
                    Si le fichier est volumineux et que vous souhaitez rechercher une partie spécifique, vous pouvez utiliser
 cat filename | grep text_to_search -ni Vous pouvez aussi utiliser un éditeur Vim plus interactif (ou un éditeur vi si vous n’avez pas Vim):
 vim filename
Or
 vi filenameVim / vi est un excellent éditeur, peut également être utilisé en tant que lecteur en "Mode normal" ou en utilisant l'option -R, il possède de nombreuses fonctionnalités qui vous aideront à parcourir le fichier.
vim -Rest view. Mais gardez à l'esprit qu'il n'aime pas les redirections, comme indiqué dans xargs et vi - «L'entrée ne provient pas d'un terminal» .
                    Utilisez la commande cat pour afficher le contenu du nom de fichier. nom du fichier chat
Utilisez la commande vim pour éditer le fichier. vim filename
sed -n l filepourrait également être utile.