18 maio, 2009

Livros Online

Uma página excelente na Internet, com links para livros online encontra-se no endereço http://www.hoganbooks.com


Nela vocês vão encontrar livros, em formato html, como "The Complete Idiot's Guide to JavaScript", "Windows 95 Tips, Tricks, and Secrets", e muitos outros.


E o mais surpreendente é que os livros são comercializados no formato tradicional também e são oferecidos por editoras de renome como QUE, O'Reilly e outras. A O'Reilly está disponibilizando o livro "AIX Version 4: System and Administration Guide". Este é um livro em fase beta e ainda não foi lançado. Até ao lançamento ele fica disponível e os interessados podem inclusive fazer uma reserva para a compra do livro.


Além destes livros, que até à pouco tempo atrás somente podiam ser encontrados em livrarias, existem também os livros gratuitos existentes na Internet e que somente são encontrados na sua versão online.


Os livros estão agrupados por título e sempre existem novidades. Não se esqueça de visitar esta página. É uma mina de ouro! :)

O Comando find

O comando find é extremamente poderoso e flexível para descobrir ficheiros que correspondam a determinadas especificações.


Por exemplo, suponhamos que queiramos descobrir todos os ficheiros que não possuem dono no nosso sistema. Esta situação é extremamente comum, visto que utilizadores são criados e apagados diariamente e ficam vagando pelo sistema e podem eventualmente vir a comprometer a segurança. O comando



find / -nouser -print

irá criar uma listagem com todos os ficheros do sistema que não pertencem a ninguém.


Caso queiramos simplesmente apagar estes ficheiros (não recomendável!!!) basta redirecionar a saída deste comando para o comando xargs, da seguinte forma:



find / -nouser -print | xargs rm

O mais recomendável é criar um backup destes ficheiros, para de seguida apagá-los:



find . -cpio /dev/rmt0 -nouser

Para restaurar estes ficheiros



cpio -idmv < /dev/rmt0

O comando cpio, a exemplo do comando find, é extremamente poderoso e flexível. Para mais informações sobre a sua utilização e sintaxe, consulte as man pages (ou as próximas dicas :)

O programa gzip

O programa gzip é hoje extremamente popular na Internet. A maioria dos servidores de ftp anónimos da Internet compactam os seus ficheiros com este programa.


Programas compactados com o programa gzip apresentam a extensão .gz. como em sendmail.tar.gz.


Para descompactar ficheiros como este, visando a instalação do produto, no nosso caso, sendmail, é comum seguir os seguintes passos



gunzip sendmail.tar.gz
tar xvf sendmail.tar





Na verdade não é necessária a realização do primeiro passo. O ficheiro pode ser descompactado para stdout e redireccionado para o programa tar. Desta forma ocupa-se menos disco. O comando







gzip -dc sendmail.tar.gz | tar xvf -





obtem exactamente os mesmos resultados dos comandos anteriores sem descompactar o ficheiro de distribuição original

O comando dd

O comando dd possui várias outras funções interessantes além da cópia pura e simples de ficheiros. Um função que julgo bastante útil é a conversão de caracteres.


Por exemplo, para se converter todos as letras maiúsculas de um documento para letras minúsculas, executar o comando abaixo:



dd if=ficheiro1 of=ficheiro2 conv=lcase

Este comando irá converter todos as letras maiúsculas do ficheiro1 em letras minúsculas e gerar outro ficheiro chamado ficheiro2 com o resultado do processamento.


Da mesma forma, se quisermos converter todas as letras do ficheiro2 para maiúsculas:



dd if=ficheiro2 of=ficheiro3 conv=ucase

Outra aplicação interessante deste comando seria renomear todos os ficheiros de um determinado directório com seu nome equivalente em letras minúsculas:



#!/bin/sh
for file in ""ls""
do
mv $file ""echo $file | dd conv=lcase""
done

Man Pages

Às vezes se deseja imprimir algumas páginas do manual do sistema. Normalmente executa-se o comando man redireccionando a saída para um ficheiro:



man ls > ls.doc

Alguns sistemas operativos entretanto costumam sublinhar determinadas partes do documento e às vezes a impressora não suporta este tipo de impressão.


Para retirar os sublinhados, basta redireccionar a saída do comando man através do comando col invocado com a opção -b:



man ls | col -b > ls.doc

O documento criado, no nosso caso, ls.doc, pode então ser impresso em qualquer tipo de impressora.

Pipes

Um dos factores que marcam a superioridade do Unix é o conceito de pipes. No Unix a filosofia original previa o desenvolvimento de módulos que desempenhassem uma tarefa e a desempenhassem bem.

Vejam só este exemplo:

cat book*|deroff -w|dd conv=lcase|sort|uniq -c|sort -nr|more

Esta sequência de comandos irá realizar uma tarefa que iria requerer muitas linhas de código e muito planeamento. Vamos analisá-la:

cat book* - redirecciona para a saída padrão o conteúdo de ficheiros iniciados em book
deroff -w - transforma o resultado do comando cat numa saída contendo uma palavra por linha
dd conv=lcase - converte para letras minúsculas o resultado do comando deroff
sort - ordena alfabeticamente o resultado
uniq -c - agrupa palavras iguais registando o número de ocorrências
sort -nr - realiza uma nova ordenação, porém numérica, colocando no topo da lista as palavras que ocorrem com mais freqüência
more - exibe um ecrã de cada vez

Este exemplo ilustra de maneira clara como diversos comandos reunidos podem realizar tarefas complexas e num tempo ínfimo, comparado com o esforço necessário para escrever um programa que desempenhe tarefa similar. Cada um dos comandos acima realiza um processamento sobre os dados que lhe são fornecidos, preparando-os para serem processados pelo próximo comando na sequência.

Agora, para que serve isto? Por exemplo, um professor de literatura analisando a obra de Shakespeare, poderia querer determinar um padrão no uso de palavras. Outro exemplo, um professor de inglês instrumental poderia querer determinar as palavras mais utilizadas para elaborar as suas aulas de maneira mais eficiente. Poderia até mesmo determinar padrões de uso diferentes para cada área de especialização, como medicina, engenharia, administração, etc, etc. Ainda outro exemplo, um administrador de sistemas pode desejar analisar ficheiros de log criados pelo tcpwrapper, syslog, e outros para identificar padrões de invasão dos seus sistemas. As possibilidades são infinitas (e interessantes :-)

02 maio, 2009

Manter sempre a mesma página Inicial no browser

Alguns sites de forma ilegal modificam o teu editor de registo e colocam o seu site como página inicial pré-definida, para acabar com esta situação segue os seguintes passos:

  1. Clique direito no ícone do Internet Explorer ou Firefox selecciona propriedades.
  2. Na caixa de texto “Destino” tu poderas ler “C:\Programas\Internet Explorer\IEXPLORE.EXE” ou “C:\Programas\Mozilla\Firefox.exe”.
  3. Agora ao adicionares o endereço do site que desejas como página inicial ao final deste campo vais substituir a definição da homepage nas opções do Internet Explorer ou do Firefox
  4. Exemplo:

Boa navegação na Internet contra homepagejacking =)

Aumentar a velocidade com que os menus aparecem

Para aumentar a velocidade com que aparecem os menus no Windows XP segue os seguintes passos:

  1. Menu Iniciar
  2. Executar
  3. Digita regedit.exe
  4. Navega até HKEY_CURRENT_USER\CONTROL PANEL\DESKTOP
  5. Localiza a chave chamada de MenuShowDelay, provavelmente o seu valor está pré-definido para 400. Modifica esse valor para 150
  6. Reinicia o teu computador

E voilá! Vais notar um ligeiro aumento da velocidade dos menus =)

Como fazer o Windows Explorer abrir a pasta que desejas

Está farto do "Explorador do Windows" iniciar sempre a partir dos meus documentos?


Podes personalizar isto através da modificação das propriedades do ícone do "Explorador do Windows" e substituir o ficheiro alvo com:



%systemroot%\explorer.exe /n, /e, c:\caminho_absoluto_para_a_pasta_que_desejas

Modificar a pasta pré-definida para a instalação dos programas

Enquanto o tamanho dos discos rígidos aumenta, cada vez mais pessoas usam as partições para separar e guardar grupos de ficheiros.


O Windows XP usa a pasta c:\Programas como o directório base onde os novos programas são instalados. Apesar disso, é possível modificar a drive pré-definida ou directório através da utilização de um hack de Registo.


Executa os seguintes passos:



  1. Iniciar

  2. Executar

  3. Digita "regedit" (sem as aspas)

  4. Vai para este directório... HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion

  5. Procura o pelo valor com o nome ProgramFilesDir. Por pré-definição este valor será C:\Programas. Edita o valor para qualquer drive ou pasta válida e o Windows XP irá começar a usar essa pasta como directório de instalação pré-definido para os novos programas.


Boas instalações =)