¿Qué hace '(comilla simple) en la terminal?

8

Si escribo '(comilla simple, al lado del <enter>botón) en el terminal y luego presiono enter, aparece un >mensaje. ¿Qué es exactamente esto, para qué se utiliza y qué tipo de comandos puedo ingresar aquí?

Puedo <Ctrl-C>salir de eso, pero eso es todo lo que tengo.

Insperatus
fuente

Respuestas:

6

Un terminal no solo acepta código de una línea. En realidad, puedes escribir código (ya que bash scripting es un lenguaje de programación) en varias líneas.

Por ejemplo, si escribes:

while true; do <enter>

también mostrará exactamente lo mismo >que mostró su caso. Te permite ingresar más comandos. Ahora, si escribe:

echo "Cake is a lie" <enter>
sleep 1              <enter>
done                 <enter>

comenzará a ejecutar su código (que, en esta ocasión, es simplemente un ciclo while que generará una cadena cada 1 segundo). Esto le permite construir pequeños programas sin tener que escribirlos en un código de una línea, como este:

while true; do echo "Cake is a lie"; sleep 1; done

lo cual, en este caso, no es un problema, pero podría serlo en otras ocasiones (con más código para escribir).

Por lo tanto, generalmente se usa para escribir varias líneas de código. En su ocasión, el shell reconoce que no tiene un número par 'dentro de su código, y esto no podría funcionar en ningún caso (lo mismo se aplica "). Entonces, te permite escribir más código para completar lo que te queda.

Por ejemplo, si das como comando:

echo "Cake is a <enter>

entonces te permitirá continuar. Y de hecho, puedes:

lie"            <enter>

Normalmente generará:

Cake is a
lie
hytromo
fuente
Ya veo, así que en lugar de darme un mensaje de error, me da la oportunidad de terminar el comando de manera inteligible. ¿Hay un nombre para este "modo"?
Insperatus
2
No creo que tenga un nombre especial, generalmente se lo conoce como 'aviso secundario'
hytromo