run two commands in screen detached

It works if I specify bash -c

screen -dm bash -c 'command1; command2;'

User meuh provided this solution in comments, thanks.


Put the entire sequence of commands you're sending to screen in quotes; otherwise the first semicolon ends that command and sends the remainder to the shell in which you're invoking screen:

screen -dm 'wget http://www.example.com/file.zip -O temp/file.zip; mv temp/file.zip downloads/file.zip'

It might, though, be wise to only do the file move if the download is successful:

screen -dm 'if wget http://www.example.com/file.zip -O temp/file.zip; then mv temp/file.zip downloads/file.zip; fi'