Screen exits when the command it is running finishes.
In your first example you don't specify a command, so your default shell will be started.
In your second example, you don't specify a shell so your command is run directly. When that command receives the Ctrl-C
, it will quit and so the screen will close.
Depending on what you want to achieve, you can use the zombie
, defzombie
or onerror
options to screen to make the window stick around after the command has quit.
Alternatively, this answer contains a suggestion for keeping a bash shell open after an initial script terminates.