quando digito um determinado comando, às vezes obtenho uma saída semelhante a esta.
>
>
>
>
A que EXATAMENTE os símbolos> se referem.
Responder1
Seu caso
O símbolo ">" neste caso significa que o terminal deseja mais informações depois que você atingiu odigitarchave.
No seu caso, você tem uma string que não foi fechada. Por exemplo, se eu digitasse o seguinte comando echo "Hello
e, em seguida, pressionasse Enter, receberia um ">" até fechar a string. Exemplo:
Se eu digitar:
eric@Ubuntu: /home/eric$ echo "Hello
>what?
>single quotes won't close it?'
>but double quotes will! "
Ele imprimiria a seguinte saída:
Hello
what?
single quotes won't close it?'
but double quotes will! "
Isso permite que você tenha uma string que se estende por várias linhas, sem precisar digitar explicitamente o caractere de nova linha "\n".
Informação extra
O fato de um ">" ser impresso para este prompt, e nada mais, é definido pela $PS2
variável de ambiente. Se você definir $PS2
outra coisa, será solicitado isso.
Outra maneira de exibir esse prompt é colocar uma barra invertida ("\") no final da linha. Basicamente concatena duas linhas, por exemplo, as duas linhas a seguir:
eric@Ubuntu: /home/eric$echo "Hello \
>There my friend"
seria processado como eric@Ubuntu: /home/eric$echo "Hello There my friend"
e apenas produzido Hello There my friend
.
Ambos os métodos são usados para formatar seu código de uma forma mais legível. Pode ser frustrante nas primeiras vezes que você vê isso, pois você realmente não sabe o que está causando isso, mas ao tentar tornar um código mais longo ou a saída do código legível, ambos serão úteis.
Responder2
Um pipe também pode ser usado para anexar informações a um arquivo, por exemplo, se você digitar o seguinte no terminal
echo "Test Line" > test.txt
Isso definirá o conteúdo do arquivo test.txt como "Linha de teste" com um caractere de nova linha no final. Se o arquivo ainda não existir, ele será criado.
echo "Test Line" >> test.txt
Isso adicionará "Linha de teste" e um caractere de nova linha ao final do arquivo test.txt, se existir. Se não existir, o arquivo será criado vazio e esta linha será adicionada a ele.
Responder3
>
significa redirecionar o fluxo para
>>
significa redirecionar para mas no final
só se aplica asaída padrão
enquanto 2>
se aplica astderr, obviamente usar 1>
é o mesmo que>
saída padrãoé a saída normal do programa,stderré a saída de erro para programas. Portanto, existem duas saídas. Você pode redirecionar as duas saídas usando&>
mais informações aquihttp://www.tldp.org/LDP/abs/html/io-redirection.html