Risposte:
Ciò che sta accadendo è che 'viene interpretato come l'inizio di una parte del comando a virgoletta singola , il che significa che il carattere di fine riga viene trattato come un valore letterale (ovvero passa a una nuova riga; non "Ho finito ; esegui questo "). L' >indica che si sta ancora digitando il comando, anche se su una linea diversa. Per terminare il comando dovrai aggiungere un'altra virgoletta.
Ad esempio, con il comando echo, che si limita a ripetere tutti i parametri forniti all'output standard:
:~ scott$ echo hello
hello
:~ scott$ echo 'hello'
hello
:~ scott$ echo 'hello
> on
> multiple
> lines'
hello
on
multiple
lines
:~ scott$
È una continuazione del comando che stai inserendo, che non può essere eseguito così com'è perché è chiaramente incompleto in quanto ha una virgoletta singola senza pari.
Ciò significa che hai iniziato a citare qualcosa (con l'apostrofo iniziale), quindi la shell non lo esegue fino a quando non chiudi la citazione. Quindi quando si inserisce un altro apostrofo e si preme return, si passa tutto alla shell con i nuovi caratteri di riga contenuti nella stringa tra virgolette.