Sagarchalise me trouxe no caminho certo, mas só na metade do caminho.
O lugar, onde procurar no Xfce é de fato
$HOME/.cache/sessions
Encontrei muitos arquivos lá, incluindo alguns arquivos Thunar vazios, arquivos xfwm4 e, interessante para nós, xfce4-session-asux:0
, onde asux
é o nome da minha máquina local, o nome do host.
: 0 lembra o caminho, o XServer enumera instâncias diferentes, que eu usei raramente, mas eu usei, então eu tenho um arquivo xfce4-session-asux:1
também, e é bastante antigo, mas sessões diferentes não são armazenadas em arquivos diferentes, mas em diferentes seções dentro do arquivo.
Essa seção é assim:
[Session: 2010]
key1=value1
key2=value2
...
LastAccess=1315125649
Assim, você pode ver o nome ("2010" neste caso) da sessão, um grupo de pares de valores-chave e, como último, esses pares uma chave LastAccess. Armazena os segundos desde 1.1.1970 UTC. Não é curto e fácil traduzi-lo para uma data legível por humanos com date
ou bash arithmetic
(ou diga-me como nos comentários). Mas pelo menos a idade em anos vale a pena calcular:
echo $((1315125649/(365*24*60*60)))
41
Portanto, são 41 anos após 1.1.1970 (ignorando os anos bissextos e o horário de verão, e reduzindo o resultado para anos inteiros) que é 2011. Os outros campos também podem ser calculados - eu preferi fazer isso com scala
por
scala> val d = new java.util.Date (1315125649*1000L)
d: java.util.Date = Sun Sep 04 10:40:49 CEST 2011
Então eu removo toda a seção, e depois do relogin, esta sessão desapareceu da minha lista de sessões.
atualização:
Agora conheço a solução muito mais simples para o problema da data, basta colocar no shell:
date -d @1315125649
So 4. Sep 10:40:49 CEST 2011
Isso pode ser feito em um script simples:
for f in ~/.cache/sessions/xfce4-session-*
do
la=$(sed -n -r 's/LastAccess=(.*)//p' "$f")
echo -e $(date -d @$la) "\t$f"
done
Fr 9. Mär 07:17:13 CET 2018 /home/stefan/.cache/sessions/xfce4-session-tux201t:0
Fr 9. Mär 07:16:03 CET 2018 /home/stefan/.cache/sessions/xfce4-session-tux201t:0.bak