web-dev-qa-db-fra.com

Enregistrer la sortie dans un fichier texte à partir d'un terminal Mac

Comment pourrais-je entrer une commande, par exemple, system_profiler, et que la sortie soit sauvegardée quelque part sur mon ordinateur?

17
JShoe

Simplement avec la redirection de sortie :

system_profiler > file.txt

Fondamentalement, ceci prendra la sortie de system_profiler et l'enregistrera dans le fichier file.txt. Il existe techniquement deux "flux" de sortie différents, une sortie standard et une erreur standard. Elles sont traitées 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 procéder comme suit:

system_profiler &> file.txt

Le & indique au shell de rediriger la sortie standard et l'erreur standard vers le fichier.

Si vous voulez simplement générer une erreur standard, vous pouvez procéder comme suit:

system_profiler 2> file.txt

Le 2 indique au shell qu'il ne doit rediriger que l'erreur standard.

Utiliser le > écrasera le fichier s'il est déjà là. Si vous souhaitez l'ajouter à un fichier sans effacer l'ancien, vous pouvez utiliser >>, comme suit:

system_profiler >> file.txt

Vous pouvez bien sûr utiliser les & et 2 pour envoyer à la fois les erreurs standard et standard, et uniquement les erreurs standard avec l'opérateur >>.

35
Wuffers

Redirection.

awesomo > somefile.txt