Se você assim como eu gostou muito do jSMS, que é um programa baseado em Java que manda mensagem para celulares de várias operadoras do país, e que tem o programa na sua versão pra Windows e Linux, com certeza já esbarrou em um problema... compartilhar a agenda das duas versões.
Inicialmente eu tinha pensado em usar um arquivo só, para o Windows e Linux, mas como meu Windows é NTFS, não consigo montar a partição RW, o que já dificulta um pouco. Então fiz um script que vou compartilhar com vocês para tentar equiparar os dois arquivos de contatos.
Primeiramente vamos aos diretórios onde se encontram os arquivos da agenda do jSMS. No Linux = SEUHOME/.jSMS/contacts, no Windows = C:\Documents and Seetings\SEUUSUARIO\.jSMS\contacts.
No meu exemplo:
linux = /root/.jSMS
windows = /mnt/C/Documents\ and\ Seetings/Nunes/.jSMS/contacts
Vamos lá então!!!
echo 'Verificando updates da agenda jSMS'
sleep 1
#comparando o arquivo de contatos do windows com o do linux
cmp /mnt/C/Documents\ and\ Settings/Nunes/.jSMS/contacts /root/.jSMS/contacts > /tmp/jsms_cmp
#se os arquivos forem diferentes
if [ -s /tmp/jsms_cmp ] ; then
#se o arquivo do windows for mais novo do que o arquivo do linux
if [ /mnt/C/Documents\ and\ Settings/Nunes/.jSMS/contacts -nt /root/.jSMS/contacts ] ; then
echo 'Atualizando agenda do jSMS'
#faca um backup dos contatos do linux
cp /root/.jSMS/contacts /root/.jSMS/backup_contacts
#copie o arquivo do windows para o linux
cp /mnt/C/Documents\ and\ Settings/Nunes/.jSMS/contacts /root/.jSMS/
sleep 2
#se o arquivo do linux for mais novo do que o do windows
else
#comparar o arquivo do windows com a referencia a ele no linux
cmp /mnt/C/Documents\ and\ Settings/Nunes/.jSMS/contacts /root/.jSMS/ref_contacts > /tmp/jsms_refcmp
#se os arquivos forem diferentes
if [ -s /tmp/jsms_refcmp ] ; then
echo 'Foi detectada uma versao mais nova da agenda jSMS no Linux'
sleep 1
echo 'Foi detectada uma alteracao da agenda JSMS no Windows'
sleep 1
echo 'A agenda do jSMS Linux sera atualizada mas as alteracoes nao serao efetivadas'
sleep 1
echo 'Atualizando agenda do jSMS'
#copiar o arquivo do windows para referencia do linux
cp /mnt/C/Documents\ and\ Seetings/Nunes/.jSMS/contacts /root/.jSMS/ref_contacts
echo 'A agenda do Linux foi equiparada a do Windows, os dados estao em /root/.jSMS/ref_contacts'
echo 'Terminando atualizacao'
sleep 1
else
echo 'Nenhuma atualizacao encontrada'
fi
fi
else
echo 'Nenhuma atualizacao encontrada'
fi