Différence entre les opérateurs >> et> \>?

25

RHEL 6

Y a-t-il une différence entre les opérateurs >>et >\>? J'ai lu le texte suivant dans un livre de formation RHEL:

"Vous pouvez ajouter une sortie standard à la fin d'un fichier existant avec une double flèche de redirection avec une commande telle que ls >\> filelist

Je suis plus habitué à l' >>opérateur et lorsque j'essaye les deux, j'obtiens des résultats différents.

  • L'utilisation >>semble ajouter la sortie au fichier qui le suit (comme prévu).
  • L'utilisation >\>semble ajouter la sortie à un fichier appelé littéralement >

Est-ce une erreur dans le livre que je lis? Ou est-ce que je manque le point de l'auteur?

Mike B
la source
@Sirex court, mais une réponse.
jordanm
Ouais je suppose !
Sirex

Réponses:

45

Pour ajouter du texte à un fichier que vous utilisez >>. Pour remplacer les données actuellement dans ce fichier, vous utilisez >. En général, dans bash et autres shells, vous échappez aux caractères spéciaux en utilisant \.

Ainsi, lorsque vous utilisez echo foo >\>ce que vous dites, c'est "rediriger vers un fichier appelé >", mais c'est parce que vous échappez au second >. Cela équivaut à utiliser echo foo > \>qui est le même que echo foo > '>'.

Donc, oui, comme l'a dit Sirex, c'est probablement une faute de frappe dans votre livre.

terdon
la source
12

ressemble à une faute de frappe. .. ... .. ..

Sirex
la source
1
Merci. Je me demandais si je manquais ici un concept Linux extrêmement simple. =)
Mike B