¿Qué significa > en la terminal?

¿Qué significa > en la terminal?

Cuando escribo un determinado comando, a veces obtengo un resultado similar a este.

>
>
>
>

¿A qué se refieren EXACTAMENTE los símbolos >?

Respuesta1

Tu caso

El símbolo ">" en este caso significa que el terminal quiere más entrada después de haber presionado el botóningresarllave.

En tu caso, tienes una cadena que no ha sido cerrada. Por ejemplo, si ingresé el siguiente comando echo "Helloy luego presioné Enter, me daría un ">" hasta que cerrara la cadena. Ejemplo:

Si escribo:

eric@Ubuntu: /home/eric$ echo "Hello
>what?
>single quotes won't close it?'
>but double quotes will! "

Imprimiría el siguiente resultado:

Hello
what?
single quotes won't close it?'
but double quotes will! "

Esto le permite tener una cadena que abarca varias líneas, sin tener que escribir explícitamente el carácter de nueva línea "\n".

Información extra

El hecho de que se imprima un ">" para este mensaje, y no otra cosa, lo establece la $PS2variable de entorno. Si configura $PS2otra cosa, eso es lo que se le solicitará.

Otra forma de hacer que se muestre este mensaje es colocando una barra invertida ("\") al final de la línea. Básicamente, concatena dos líneas, por ejemplo, las dos líneas siguientes:

eric@Ubuntu: /home/eric$echo "Hello \
>There my friend"

se procesaría como eric@Ubuntu: /home/eric$echo "Hello There my friend"y solo se generaría Hello There my friend.

Ambos métodos se utilizan para formatear su código de una manera más legible. Puede ser frustrante las primeras veces que lo ve, ya que no sabe realmente qué lo está causando, pero cuando intenta hacer que el código más largo o la salida del código sean legibles, ambos serán útiles.

Respuesta2

Una tubería también se puede usar para agregar información a un archivo, por ejemplo, si escribiera lo siguiente en la terminal

echo "Test Line" > test.txt

Eso establecerá el contenido del archivo test.txt en "Línea de prueba" con un carácter de nueva línea al final. Si el archivo aún no existe, se creará.

echo "Test Line" >> test.txt

Esto agregará una "Línea de prueba" y un carácter de nueva línea al final del archivo test.txt, si existe. Si no existe, el archivo se creará vacío y luego se le agregará esta línea.

Respuesta3

>significa redirigir la transmisión a

>>significa redirigir a pero al final

solo se aplica asalida estándar

mientras que 2>se aplica astderr, obviamente usar 1>es lo mismo que>

salida estándares la salida normal del programa,stderres la salida de error para los programas. Entonces hay dos salidas. Puede redirigir las dos salidas usando&>

más información aquíhttp://www.tldp.org/LDP/abs/html/io-redirection.html

información relacionada