The remote host's $TERM variable is in fact xterm. When I connect to the screen session the $TERM variable is 'screen'.
Are you running screen locally or remotely?
Remotely. My work machine is a laptop, which is not powered on all the time. Hence I use a remote box as a jumping-off point, and run my screen sessions there.
Or you could write a script, scp it to the hosts you want to run it on (testing first, natch), and exec it:
for host in <hostlist>; do scp myscript $host:.; done
[fiddle around with tests or verification as necessary]
for host in <hostlist>; do echo "** $host **"; ssh $host ./myscript; done
Yes, I do this quite a bit. But there are often times when I have to do interactive work, running different commands on various hosts.
As I mentioned earlier, dsh (distributed ssh) is a very powerful tool for running multiple remote commands. Puppet, cfengine, and other tools may also be useful.
Yes, thank you for the pointers. I'm familiar with both puppet and cfengine. The GNU screen sessions are mainly used during the build process, before a server has puppet or cfengine up and running.