Screen и history?
Думается один bash у Вас перезатирает историю других:

Предлагаю:
1. Добавлять, а не перезаписывать
shopt -s histappend

2. Многострочные команды хранить одной строкой (по желанию):
shopt -s cmdhist

3. После каждой команды сбрасывать историю и перичитывать общую историю (это если вы хотите чтобы команды из одного bash стали появляться в другом). 
export PROMPT_COMMAND='history -a; history -n'

4. Косметика: не запоминать повторы команд, не сохранять указанные команды
export HISTCONTROL=«ignoredups»
export HISTIGNORE=«ls:l:ll:[bf]g:exit»
>> damnerd: А завершаете вы «окна» по-хорошему, т.е. Ctrl+D (либо exit, либо logout)? 
Как прийдется, если 1-3 сессии -то exit, а если больше то Ctrl+D много раз, но иногда, конечно, бывает что и просто ребут. На результат (сохраняется не пойми как), вроде, бы не влияет.