...почему отличаются в работе эти варианты:
rain@elitebook:~$ /bin/bash -c 'var=bla ; echo $var'
bla
rain@elitebook:~$ /bin/bash -c "var=bla ; echo $var"
rain@elitebook:~$
Т.е., я понимаю разницу между одинарными, двойными и косыми кавычками внутри скрипта, но ведь в данном случае кавычки просто ограничивают строку, которая передается на вход /bin/bash.
Ну и еще тогда: там же, в man bash сказано, что то, что идет после кавычек, передается как аргументы в строку, начиная с нуля. Такой вариант работает:
rain@elitebook:~$ export VAR='-1 -s' ; /bin/bash -c 'echo ls $0 $1' "$VAR"
ls -1 -s
А как то же самое сделать для сессии скрина?
export VAR='-1 -s' ; screen -S 7161.elitebook_mainscreen -X screen /bin/bash -c 'echo ls $0 $1 ; read' "$VAR"
В созданном терминале вижу только ls без аргументов.