Pular para o conteúdo

Integrando agenda do jSMS do Linux e do Windows

Dica publicada em Shell Script / Miscelânea
Victor Guimarães Nunes nunesvictor
Hits: 6.895 Categoria: Shell Script Subcategoria: Miscelânea
  • Indicar
  • Impressora
  • Denunciar

Integrando agenda do jSMS do Linux e do Windows

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

Gerenciador de redes wireless no Slackware Linux

Configurando webcam Omnivision 2640 (Dell Inspiron 1525 Integrated Webcam) no Slackware 12.2

Como usar o jSMS direto do pen drive

Criando pequenos pacotes TGZ

Mercury + Audacious (usando plugin do XMMS)

gxmessage :: shell script incrementado

Como substituir caracteres acentuados pelos equivalentes não-acentuados

Grep - Procurando por conteúdo em arquivos

Formatando números no shell com zeros à esquerda

Linux Omni-bot Autosetup 2011, programinha que facilita o uso do Omni-bot

#2 Comentário enviado por thefoxmail em 10/06/2007 - 20:31h
Você tbm pode fazer um link pra agenda do Windows mas é claro que é necessário escrita e leitura na partição Windows
#3 Comentário enviado por nunesvictor em 22/06/2007 - 14:04h
sim...
também por isso preferi fazer desta maneira, porque minha partição windows eh NTFS
dae ja viu ne
=\

Contribuir com comentário

Entre na sua conta para comentar.