Diferença entre operadores >> e> \>?


25

RHEL 6

Existe uma diferença entre os operadores >>e >\>? Li a seguinte sinopse em um livro de treinamento do RHEL:

"Você pode adicionar saída padrão ao final de um arquivo existente com uma seta de redirecionamento duplo com um comando como ls >\> filelist

Estou mais acostumado ao >>operador e, quando tento os dois, obtenho resultados diferentes.

  • O uso >>parece acrescentar a saída ao arquivo a seguir (conforme o esperado).
  • O uso >\>parece acrescentar a saída a um arquivo chamado literalmente >

Isso é um erro no livro que estou lendo? Ou estou perdendo o argumento do autor?


@ Sirex curto, mas uma resposta.
jordanm

Sim, eu acho !
Sirex

Respostas:


45

Para acrescentar texto a um arquivo que você usa >>. Para substituir os dados atualmente nesse arquivo, você usa >. Em geral, no bash e em outras conchas, você escapa caracteres especiais usando \.

Então, quando você usa echo foo >\>o que está dizendo é "redirecionar para um arquivo chamado >", mas isso ocorre porque você está escapando do segundo >. É equivalente a usar echo foo > \>qual é o mesmo que echo foo > '>'.

Então, sim, como disse a Sirex, isso provavelmente é um erro de digitação no seu livro.


12

parece um erro de digitação. .. ... .. ..


1
Obrigado. Gostaria de saber se eu perdi algum conceito linux flagrantemente simples aqui. =)
Mike B
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.