¿Qué hace este comando con una barra invertida al final?

¿Qué hace este comando con una barra invertida al final?
curl -L https://github.com/dhiltgen/docker-machine-kvm/releases/download/v0.10.0/docker-machine-driver-kvm-ubuntu14.04 > /usr/local/bin/docker-machine-driver-kvm \

Descarga un archivo llamado docker-machine-driver-kvm-ubuntu14.04y luego? ¿Lo envía al directorio /usr/local/bin/docker-machine-driver-kvm?

Además, ¿qué pasa con \el final?

Respuesta1

Eso parece un error si la línea debe interpretarse por sí sola.

Una barra invertida evita que el shell interprete el siguiente carácter. Si el siguiente carácter después de la barra invertida es un carácter de nueva línea, el shell no interpretará esa nueva línea como el final del comando. En cambio, permite efectivamente que un comando abarque varias líneas.

Es común dividir líneas largas de esta manera cuando desea que sea más fácil leer un comando largo:

rsync --archive \
      --verbose \
      user@source:/dir/ \
      user@target:/dir/

Observe que la última línea no debe tener un \al final ya que es la última línea. Tenga en cuenta quenada(ni siquiera un comentario o un solo espacio) podrán seguir las \líneas así divididas.

En conclusión, sí, el comando descarga un archivo y lo guarda en un archivo en el disco. Otra forma de hacer lo mismo, sin redirección, sería utilizar la -oopción con curl:

curl -L \
    -o /usr/local/bin/docker-machine-driver-kvm \
    https://github.com/dhiltgen/docker-machine-kvm/releases/download/v0.10.0/docker-machine-driver-kvm-ubuntu14.04 \

(seguido de lo que esté en la siguiente línea de su script)

información relacionada