La respuesta de JohnC ya explica el backtick. Pero lo que también se está preguntando es el >
aviso. Este es un mensaje de continuación, y no solo se activa por un retroceso, sino siempre cuando su shell claramente sabe que no ha terminado de ingresar un comando. El ejemplo más fácil es poner una continuación de línea explícita \
al final de una línea de entrada (que ayuda a dividir la entrada larga):
$ echo \
> hallo
Tenga en cuenta que al igual que PS1
controla el aspecto del símbolo del sistema, también puede configurarlo PS2
para cambiar el mensaje de continuación, p. Ej.
$ export PS2="(cont.) "
$ echo \
(cont.) hallo
Hay muchas razones para que ocurra la continuación. Un solo backtick está incompleto, pero también podría ingresar algo como
ls -l `which cp`
en una sola línea (nota al margen: se recomienda su uso $(
y )
, en cambio, los paréntesis hacen que sea obvio dónde comienza y termina la expansión, mientras que los backticks simples hacen que sea más difícil ver dónde falta uno. Y anidar ...). Otras posibles razones para un aviso de continuación:
- una falta
done
después while
ofor
- un desaparecido
fi
después de unif
- un desaparecido
esac
despuéscase
- falta un paréntesis de cierre, por ejemplo, en subcapas
(cd $HOME; cat .bashrc)
- falta un comando después de la canalización
|
, así como la ejecución condicional ||
y &&
( &
aunque no , ya que eso solo hace que el comando se ejecute en segundo plano)
- una cita de cierre faltante (
'
o "
)
Curiosamente, una llave faltante }
después de una expansión variable ${
también provoca una solicitud de continuación, pero fallará debido al espacio insertado:
$ echo ${
> PS2}
bash: ${
PS2}: bad substitution