Comment pourrais-je entrer une commande, disons system_profiler, et faire enregistrer la sortie quelque part sur mon ordinateur?
Simplement avec la redirection de sortie :
system_profiler > file.txt
Fondamentalement, cela prendra la sortie de system_profiler
et l'enregistrera dans le fichier file.txt
. Il existe techniquement deux "flux" de sortie différents, la sortie standard et l'erreur standard. Ils sont traités séparément et si vous utilisez la méthode de redirection simple ci-dessus, vous ne redirigerez que la sortie standard vers le fichier. Si vous souhaitez rediriger à la fois la sortie standard et l'erreur standard, vous pouvez le faire:
system_profiler &> file.txt
le &
dit au shell de rediriger la sortie standard et l'erreur standard vers le fichier.
Si vous souhaitez simplement générer une erreur standard, vous pouvez le faire:
system_profiler 2> file.txt
Le 2
permet au shell de savoir qu'il doit uniquement rediriger l'erreur standard.
Utiliser le >
va écraser le fichier s'il est déjà là. Si vous souhaitez l'ajouter à un fichier sans effacer l'ancien, vous pouvez utiliser >>
, comme ceci:
system_profiler >> file.txt
Vous pouvez bien sûr utiliser le &
et 2
pour envoyer à la fois une sortie standard et une erreur standard, et simplement une erreur standard avec l' >>
opérateur.
-bash: syntax error near unexpected token >
. Tout le reste fonctionne.Redirection.
la source