Maison > Opération et maintenance > exploitation et maintenance Linux > Analyse complète de la redirection sous Linux

Analyse complète de la redirection sous Linux

巴扎黑
Libérer: 2017-08-07 13:22:04
original
2377 Les gens l'ont consulté

Cet article présente principalement une brève analyse des problèmes de redirection sous Linux. Les amis qui en ont besoin peuvent se référer à l'

Introduction

Dans. Dans le domaine informatique, la redirection est une fonctionnalité de la plupart des interpréteurs de ligne de commande, y compris divers shells Unix qui peuvent rediriger les flux standard vers des emplacements spécifiés par l'utilisateur. Les programmes sur les systèmes d'exploitation de type Unix peuvent effectuer une redirection via l'appel système dup2, ou via freopen(3) et popen, moins flexibles mais de niveau supérieur.

1 Redirection

1.1 Symbole de redirection

> ; la sortie vers un fichier ou un périphérique écrase le fichier d'origine
> ! La redirection de la sortie vers un fichier ou un périphérique force l'écrasement du fichier d'origine
>> La redirection de la sortie vers un fichier ou un périphérique ajoute le fichier d'origine.
< Rediriger l'entrée vers un programme

1.2 Notation de redirection d'erreur standard

2> le fichier d'origine b-shell
2>> Rediriger une sortie d'erreur standard vers un fichier ou un périphérique Ajouter au fichier d'origine
2>&1 Rediriger une sortie d'erreur standard Vers le commentaire de sortie standard : 1 peut signifier une sortie standard
> Commande en entrée

1.3 Exemple de redirection de commande

Lors de l'exécution de la commande bash, il y a trois entrées principales et situations de sortie, à savoir:

1.L'entrée standard;le code est 0;la méthode utilisée est <

2. ;

3. Sortie d'erreur : le code est 2 ; ou stderr ; la méthode utilisée est 2>


[test @test test]# ls -al > list.txt
Copier après la connexion
sera affichée Les résultats sont affichés. au fichier list.txt Si le fichier existe, il sera remplacé !


[test @test test]# ls -al >> list.txt
Copier après la connexion
Accumulez les résultats affichés dans le fichier list.txt Le fichier est cumulatif et les anciennes données sont conservées !


[test @test test]# ls -al 1> list.txt  2> list.err
Copier après la connexion
Afficher les données correctes dans list.txt et les données erronées dans list.err


[test @test test]# ls -al 1> list.txt 2> &1
Copier après la connexion
Envoyez les données affichées, qu'elles soient correctes ou incorrectes, dans list.txt ! Si les fichiers d'erreur et corrects sont générés dans le même fichier, ils doivent être écrits selon la méthode ci-dessus ! Ne peut pas être écrit dans d'autres formats !


[test @test test]# ls -al 1> list.txt 2> /dev/null
Copier après la connexion
Les données affichées seront correctement sorties dans list.txt et les données incorrectes seront supprimées ! /dev/null peut être considéré comme un périphérique à trou noir. S'il est vide, il ne sera pas sauvegardé.

1.4 Pourquoi utiliser la redirection de sortie de commande

• Lorsque les informations affichées à l'écran sont importantes et que nous devons les enregistrer ;

• Les programmes exécutés en arrière-plan ne veulent pas qu'ils interfèrent avec la sortie normale de l'écran ;
• Les résultats d'exécution de certaines commandes de routine système (telles que les fichiers écrits dans /etc/crontab) ne veulent pas qu'ils interfèrent avec les résultats normaux de sortie de l'écran. Quand il peut être sauvegardé ;
• Pour certaines commandes d'exécution, nous connaissons déjà leurs éventuels messages d'erreur, donc quand nous voulons les jeter avec "2> /dev/null" ; 🎜>• Les messages d'erreur et les messages corrects doivent être affichés séparément une heure.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal