quinta-feira, 6 de maio de 2010

Usando o histórico do bash com eficiência

O interpretador de comandos padrão no Linux é o Bash (Bourne-again shell) e ele contém uma funcionalidade muito útil que é guardar o histórico dos comandos executados no prompt. Pressionando a tecla "Seta para cima", no prompt do shell, o usuário pode rolar pelo histórico dos comandos e então pressionando o "Enter" o comando é executado novamente.

Todo o histórico de um usuário é armazenado por padrão no arquivo "/home/usuario/.bash_history" e tem seu tamanho, para a sessão atual, controlado por uma variável de ambiente declarada no arquivo "/etc/profile" ou no "/home/usuario/.bash_profile" (ou .bashrc), em uma linha semelhante a "HISTSIZE=1000". A variável "HISTFILESIZE" limita o tamanho do histórico armazenado no arquivo, arquivo este que pode ser especificado pela variável "HISTFILE".

Também há a possibilidade de filtrar a entrada dos comandos ao histórico. A variável "HISTIGNORE" serve para especificar quais comandos não serão armazenados, por exemplo HISTIGNORE="pwd:ls:ls -la:exit:". A variável "HISTCONTROL" controla o armazenamento dos comandos. Com "HISTCONTROL=ignoredups" os comandos repetidos consecutivos não são armazenados e com " HISTCONTROL=erasedups" os comandos repetidos de todo histórico são removidos. Com "HISTCONTROL=ignorespace" é possível ignorar o armazenamento de um comando se ele iniciar com um espaço. Já com "HISTCONTROL=ignoreboth" todos os valores para esta variável são definidos.

O Bash fornece o comando interno "history" para visualizar ou apagar o histórico. Executando-o sem os parâmetros, todo o histórico é mostrado na tela, em linhas numeradas. Executando-o com o parâmetro "-c" todo o histórico é apagado, executando-o com o parâmetro "-d N" apenas a linha N é removida e executando-o com "-r" é apagado somente o histórico da sessão atual do usuário. Existem outros parâmetros, explicados na página manual do Bash.

É possível procurar por uma linha no histórico. Pressionando "Ctrl+r" o prompt fica ativo para receber a palavra chave e a medida que alguma linha contenha a string, esta vai aparecendo no prompt de comando. Para executar um comando específico contido no histórico usa-se o comando "!n", sendo n o número da linha que ele se encontra.

Muito mais pode ser feito com o histórico do interpretador de comandos Bash, consulte a página manual do Bash e outras fontes pela Internet para conhecer mais.

Problema de Lógica: Três mulheres e três profissões

Atenção, a resposta está logo após o problema!

Em uma sala de aula há 3 mulheres: Arlete, Bianca e Carolina. Elas são, não necessariamente nesta ordem, dentista, médica e psicóloga. Somente uma das afirmações abaixo é verdadeira:

* Arlete é dentista.
* Bianca não é dentista.
* Carolina não é psicóloga.

Pergunta-se: como se chama a médica?






RESPOSTA






Carolina. A primeira afirmação não pode ser verdadeira pois senão a segunda seria falsa e assim ocasionaria uma contradição. A segunda afirmação não pode ser verdadeira pois senão Carolina seria a psicóloga e Arlete ou Bianca teriam que ser dentista. A terceira afirmação é a verdadeira pois fica Bianca a dentista, Arlete a psicóloga e Carolina a médica.

quarta-feira, 5 de maio de 2010

Uma razão chamada percentagem

A percentagem ou porcentagem, do latim "per centum" (por cento), é uma razão com o consequente sendo o número 100, também chamada de razão centesimal. É um modo de expressar uma razão entre dois valores verdadeiros a partir de uma fração com denominador igual a 100.

A taxa percentual, ou percentagem, pode ser representada de três formas: com o símbolo "%", sob a forma de fração ou sob a forma de um numeral decimal. Por exemplo: 70% = 70/100 = 0,70.

A percentagem é sempre obtida de uma proporção, onde a razão de base 100 é igualada à razão dos números verdadeiros. Por exemplo, se o imposto sobre o salário for 22,5%, a proporção é como exibida abaixo:



Para o cálculo de qualquer valor de uma proporção basta realizar a multiplicação em cruz. A incógnita pode ser tanto a própria percentagem como algum valor da razão dos números verdadeiros.

Veja alguns exemplos de cálculos envolvendo percentagens:

Quanto é 12% de 1500?



O número 660 refere-se a quantos porcento de 880?



Qual é o resultado de 2500 mais 15%?

Se o valor aumentou 15% então o valor final é 115% do valor inicial, sendo assim:



Qual é o resultado de 3500 menos 25%?

Se o valor diminuiu 25% então o valor final é 75% do valor inicial, sendo assim:



Houve um aumento de 80 para 100, qual a porcentagem deste aumento?

De 80 para 100 o valor subiu 20, sendo assim:



Houve uma redução de 85 para 79, qual a porcentagem desta redução?

De 85 para 79 o valor diminuiu 6, sendo assim:



Em 500ml foi adicionado 300ml, qual a porcentagem do novo volume em relação ao volume inicial?

O valor final agora é 800ml, sendo assim:



Em 250ml foi retirado 50ml, qual a porcentagem do novo volume em relação ao volume inicial?

O valor final agora é 200ml, sendo assim:



Para agilizar alguns cálculos pode-se usar um fator de multiplicação. Para obter tantos porcentos de um valor basta multiplicar o valor com a taxa percentual em notação decimal. Por exemplo, 35% de 1800 é igual a 1800 vezes 0,35. Se fosse acrescentar 35% aos 1800 então o cálculo seria 1800 vezes 1,35 (os 100% mais 35%).

No caso de um decréscimo, o fator de multiplicação será "1 - taxa de desconto", também na forma decimal. Por exemplo, descontando 10% do valor 350 o resultado é 350 vezes 0,90 (1 menos 0,10).

terça-feira, 4 de maio de 2010

O editor de texto vi

O vi foi o primeiro editor verdadeiramente baseado em telas para o UNIX e ainda é muito popular. É usado para editar arquivos de texto ASCII. Ele é pequeno, simples e não muito difícil para aprender. Atualmente as distribuições Linux trazem o VIM (VIsual editor iMproved) que é uma versão melhorada e atualizada do editor vi. O VIM melhora o vi acrescentando novas potencialidades: janelas múltiplas, anulação multi-nível, realce de blocos e mais. Para inicializar o VIM e editar um arquivo use a seguinte sintaxe:

# vim arquivo

Se o arquivo já existir, ele será aberto para edição, se não será aberto um novo arquivo. Existem três modos de operação: modo de comando, modo de execução e o modo de edição. Quando você inicia o VIM ele está no modo de comando, este modo permite que você use diversos comandos (pressionando uma ou mais teclas) para inserir, localizar ou modificar o texto. O modo de execução se inicia quando pressionamos os ":" (dois pontos), aparecendo um prompt na parte de baixo da tela para entrada de um comando. Conheça alguns:

Comandos de movimentação do cursor pelo texto:

Ctrl+f    avança para a próxima tela (semelhante a Page Down).
Ctrl+b    recua para a tela anterior (semelhante a Page Up).
0 (zero)  move o cursor para o início da linha.
$         move o cursor para o fim da linha.
nG        move o cursor para a linha n.
:n        move o cursor para a linha n.
G         move o cursor para a última linha do texto.
w         move o cursor para a próxima palavra
b         move o cursor para o início da palavra anterior
e         move o cursor para o próximo final de uma palavra
ge        move o cursor para o final anterior de uma palavra
setas     move o cursor.

Comandos de localização e troca de texto:

/palavra         procura pela palavra a partir da posição do cursor para baixo.
?palavra         procura pela palavra a partir da posição do cursor para cima.
n                repete a última procura.
N                repete a última procura na direção inversa.
:g/s1/s//p2/g    substitui em todo o texto os p1 por p2.
:g/p1/s//p2/gc   substitui em todo o texto, solicitando confirmação, os p1 por p2.
:n,m/p1/s//p2/g  substitui da linha n até m os p1 por p2.
Ctrl+g           exibe as informações do arquivo.

Comandos de modificação do texto:

x         apaga o caractere sob o cursor.
dd        apaga a linha sob o cursor.
ndd       apaga n linhas, da linha sob o cursor para baixo.
D         apaga os caracteres na linha a partir da posição do cursor.
yy        copia a linha sob o cursor.
nyy       copia n linhas, da linha sob o cursor para baixo.
p         cola o texto apagado ou copiado após a posição do cursor.
u         desfaz a última modificação.
:r arq    insere o conteúdo do arquivo especificado após a linha do cursor.

Comandos de edição do texto (inicia o modo de edição):

a         insere o texto depois da posição do cursor.
A         insere o texto no fim da linha de onde se encontra o cursor.
i         insere o texto na posição do cursor.
I         insere o texto no início da linha de onde se encontra o cursor.
o         insere uma linha abaixo da linha com o cursor.
O         insere uma linha acima da linha com o cursor.

No modo de edição, tudo que for digitado será inserido no texto a partir da posição do cursor. Para começar uma nova linha, pressione ENTER. Para retornar ao modo de comando pressione a tecla ESC.

Comandos para gravar o texto, abrir um novo arquivo ou sair do editor:

:w        grava o texto no arquivo aberto.
:w arq    grava o texto no arquivo especificado.
:w>> arq  acrescenta o texto no arquivo especificado.
:w!       força a gravação do texto no arquivo aberto.
:wq       grava o texto no arquivo aberto e sai do editor.
:wq arq   grava o texto no arquivo especificado e sai do editor.
:e arq    abre o arquivo especificado, fechando o atual.
:q        sai do editor desde que o texto não tenha nenhuma alteração.
:q!       força a saída do editor sem salvar as alterações no texto.

Se precisar use o comando :help, mas não se assuste com a quantidade de comandos existentes. No arquivo de ajuda do VIM, para avançar em um assunto posicione o cursor sobre a ligação e pressione CTRL-]. Para retornar pressione CTRL-t ou CTRL-o. O comando :q sai da ajuda e retorna ao editor.

domingo, 2 de maio de 2010

Escolhendo um nome de domínio eficaz

O nome de domínio possui uma função muito importante no reconhecimento online da identidade da marca de uma empresa. É importante considerar como o nome de domínio será interpretado, não somente quando impresso mas também quando pronunciado. Em uma impressão é pequena a possibilidade de erro porque o nome de domínio é visto com os próprios olhos. Mas quando é tentado passar o endereço do website verbalmente à outra pessoa, por exemplo durante uma conversação pelo telefone, pode-se tornar muito difícil a interpretação.

Assim antes de registrar o nome de domínio, mantenha estas dicas em mente:

1) Para o negócio, um domínio de topo (top-level domain, TLD) .com é uma obrigação. Mesmo que tenha um .biz, .net ou .org, as pessoas sempre associam um endereço de e-mail ou de website com um .com.

2) Se o nome de domínio .com já está registrado por outra empresa, evite um mesmo nome com um domínio de topo diferente. Por exemplo, registrar acmeinc.net porque outra empresa já possui registrado acmeinc.com.

3) Um nome de domínio eficiente precisa de pouca ou nenhuma explicação quando expressado verbalmente. Ao menos que a marca dependa, tente evitar:

a) Usar números porque senão sempre terá que prolongar com uma explicação dizendo, por exemplo, "é o algarismo 3" ou "é a palavra três".
b) Substituir uma letra fonética como magika invés de magica, porque senão sempre terá uma explicação "é magica escrito com k".
c) Um homófono heterográfico fora de contexto. Por exemplo "cemcoisas.com" (semcoisas.com) porque senão sempre terá uma explicação "é um trocadilho com o sem".
d) Usar acrônimos para substituir nomes comerciais longos. Por exemplo, ninguém vai lembrar de um nome como "rgdt.com" (Rede Globo de Televisão).

4) Tenha em mente, para clareza evite usar mais de três ou quatro palavras distintas. Por exemplo "AcmeWebSite.com" está bom mas "AcmeIncCriacaoEDesenvolvimentoDeWebSite.com" é muito extenso.

5) Evite usar hífen porque são desajeitados para expressá-los em voz alta. Se for necessário use somente um. Dizer "Minha Empresa hífen Nome ponto com" é aceitável mas dizer "Minha hífen Empresa hífen Nome ponto com" é fatigante.

6) Tenha ciência dos arranjos das palavras. Às vezes devido a um infeliz arranjo um hífen é necessário para proteger a integridade da identidade da marca. Por exemplo, o nome de domínio "www.experts-exchange.com" sem o hífen pode ser interpretado como "www.ExpertSexChange.com".

quarta-feira, 28 de abril de 2010

Sun ODF Plugin para Microsoft Office

O "Sun ODF Plugin for Microsoft Office" é um complemento para o Microsoft Office, nas versões 2000, XP, 2003 e 2007, que permite abrir e gravar arquivos no formato OpenDocument diretamente dos aplicativos da suíte MS Office.

O formato OpenDocument, forma abreviada de "OASIS OpenDocument Format for Office Applications", é um formato de arquivo usado para armazenamento e troca de documentos de escritório, como textos, planilhas, bases de dados, desenhos e apresentações.

Enquanto as especificações foram originalmente desenvolvidas pela Sun Microsystems, o padrão foi desenvolvido por um comitê do consórcio OASIS (Organização para o Avanço de Padrões em Informação Estruturada, Organization for the Advancement of Structured Information Standards), baseado no formato XML originalmente criado e implementado pela suíte de escritório OpenOffice.org.

O ODF é um formato aberto e público e foi aprovado como um padrão internacional ISO/IEC em 8 de Maio de 2006 (ISO/IEC 26300:2006). O ODF é o primeiro formato de documentos editáveis de escritório a ser aprovado por uma instituição de normalização independente.

Infelizmente a Sun (Oracle) deixou de disponibilizá-lo gratuitamente neste mês, tornando-o agora um produto pago. Entretanto ainda é possível encontrar a versão gratuita em alguns sites para efetuar o download. O Superdownloads é um dos lugares em que encontrei (http://www.superdownloads.com.br/download/143/sun-odf-plugin-microsoft-office/). Parece que a versão 3.2 é a última gratuita.

Pesquisando no Google encontrei uma página na Sun que possui o plugin para download (http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_SMI-Site/en_US/-/USD/VerifyItem-Start/odp-3.2-bin-windows-en-US.exe?BundledLineItemUUID=KaVIBe.ofEcAAAEorOFfDRCa&OrderID=GXxIBe.oK2cAAAEom.FfDRCa&ProductID=qs9IBe.phzMAAAEmzaVtTbMY&FileName=/odp-3.2-bin-windows-en-US.exe%22), trata-se do mesmo arquivo disponibilizado no Superdownloads. Mas talvez não dure muito esta página.

segunda-feira, 26 de abril de 2010

Serviço de Área de Trabalho Remota do Windows

O Serviço de Área de Trabalho Remota (Remote Desktop Services, RDS) do Windows torna possível administrar um servidor remotamente, executando uma aplicação ou uma área de trabalho completa do servidor a partir de um computador cliente, através da rede. Uma vez conectado, o RDS permite controlar com o mouse e teclado o computador remoto, enquanto é mostrado no computador local a tela do ambiente operacional remoto.

Quando uma conexão é estabelecida entre um cliente e um servidor com o Serviço de Área de Trabalho Remota, apenas comandos de mouse e teclado e a tela do ambiente são enviados pela rede. O protocolo utilizado para a comunicação entre um cliente e um servidor com o Serviço de Área de Trabalho Remota é o RDP (Remote Desktop Protocol), comunicando por padrão através da porta TCP 3389.

Este serviço de terminal remoto pode ser executado em dois modos, porém é o Modo de Administração Remota que não requer um licenciamento extra. Neste modo, os administradores poderão gerenciar o servidor a partir de qualquer local. Assim, para que a conexão seja efetuada, a conta de usuário utilizada deverá ser membro do grupo dos Administradores.

No Windows XP e superiores apenas as versões Professional ou superiores possuem o serviço. As versões Home não trazem o RDS. Sua configuração é bastante simples. Vou mostrar simplificadamente os passos para o Windows XP e Windows 7.

No Windows XP basta ir em "Iniciar -> Painel de controle -> Desempenho e manutenção -> Sistema" (ou clique com o botão direito em Meu computador e vá em Propriedades) e na guia "Remoto" marque "Permitir que usuários se conectem remotamente a este computador". Clique no botão "Selecionar usuários remotos", depois em "Adicionar", escreva o nome de algum usuário cadastrado no XP e OK para encerrar, pronto. O usuário selecionado deverá possuir uma senha no sistema, senão não será aceito.

No Windows 7, acesse "Painel de Controle -> Sistema e segurança -> Sistema" (ou clique com o botão direito em Meu computador e vá em Propriedades). Clique, no canto superior esquerdo da tela, em "Configurações remotas" e em "Assistência Remota" clique em "Permitir conexões de Assistência Remota para este computador". Abaixo, em "Área de trabalho remota" escolha, "Permitir conexões de computadores que estejam executando qualquer versão da Área de trabalho remota". Clique no botão "Selecionar usuário" para definir quais usuários do computador e pronto.

Os computadores clientes não necessitam de configuração especial, basta ter o aplicativo cliente para o serviço de terminal. O Windows XP e o Windows 7 já possuem. Vá em "Iniciar -> Todos os Programas -> Acessórios" e clique em "Conexão de Área de Trabalho Remota". Na janela que abrir digite o endereço do computador servidor. Se desejar, clicando no botão "Opções" é possível personalizar a conexão.

No Linux existe o cliente "rdesktop" para o Serviço de Área de Trabalho Remota do Windows, que suporta todas as versões de servidores, incluindo Windows NT Server 4.0, Windows 2000 Server, Windows Server 2003, Windows Server 2008, Windows XP, Windows Vista e Windows 7. Sua linha de comando é como este exemplo: rdesktop -5 -a 16 -g 1024x768 192.168.1.101

Certifique-se de que a máquina que será acessada não tenha um firewall bloqueando o RDS. O Windows 7 costuma reconfigurar o firewall automaticamente na ativação do serviço, já no Windows XP pode ser necessário fazer tal ajuste.