Mais que 1%, na verdade...
No UNIX há alguns programas amplamente usados para arquivar e
compactar arquivos. tar
é usado para fazer "pacotes" --- é como PKZIP
mas
ele não compacta, apenas empacota. Para fazer um novo pacote:
$ tar -cvf <nome_do_pacote.tar> <file> [file...]
Para extrair arquivos de um pacote:
$ tar -xpvf <nome_do_pacote.tar> [file...]
Para listar o conteúdo de um pacote:
$ tar -tf <nome_do_pacote.tar> | less
Você pode compactar arquivos usando compress
, que é obsoleto e não
deve ser mais usado, ou gzip
:
$ compress <file>
$ gzip <file>
que cria um arquivo compactado com extensão (compress
) ou .gz
(gzip
). Esses programas compactam apenas um arquivo de cada vez.
Para descompactar, use:
$ compress -d <file.Z>
$ gzip -d <file.gz>
LPM.
Também há os utilitários unarj
, zip
e unzip
(compatível
com PK??ZIP). Arquivos com extensão .tar.gz
ou .tgz
(empacotado
com tar
, depois compactados com gzip
) são tão comuns no mundo
UNIX como arquivos .ZIP no DOS. Aqui está como listar o conteúdo de um
archive .tar.gz
:
$ tar -ztf <arquivo.tar.gz> | less
Primeiro: instalar pacotes é trabalho do root. A maioria dos
aplicativos do Linux são distribuídos como um archive .tar.gz
, que
normalmente contém um diretório chamado /nomedopacote/
contendo
arquivos e/ou subdiretórios. Uma boa regra é instalar esses pacotes a
partir do diretório /usr/local
com o comando
# tar -zxf <archive.tar.gz>
e depois ler o arquivo README ou INSTALL. Em muitos casos, o pacote é
distribuído em fonte, que você terá que compilar para criar os binários;
freqüentemente, bastará digitar make
e depois make install
.
Obviamente, você precisará do compilador gcc
ou g++
.
Outros pacotes devem ser descompactados a partir de /;
é o caso dos arquivos .tgz
do Slackware. Outros arquivos contêm os
arquivos, mas não um subdiretório. Sempre liste o conteúdo do pacote
antes de instalar.
As distribuições Debian e Red Hat têm seu próprio formato de pacotes;
respectivamente, .deb
e .rpm
. Este está ganhando ampla
aceitação; para instalar um pacote .rpm
, digite
# rpm -i pacote.rpm
Completamento de comando: pressionar <TAB> quando da emissão
de um comando completará a linha para você. Exemplo: se você quer
executar gcc este_e_um_nome_longo.c
;, basta digitar gcc
est<TAB>
. (Se você tiver outros arquivos que comecem com os
mesmos caracteres, forneça caracteres suficientes para resolver qualquer
ambiguidade.)
Rolagem de tela: pressionar <SHIFT + PAG UP> (a tecla cinza) lhe permite rolar a tela algumas páginas para trás, dependendo de quanta memória de vídeo você tiver.
Inicializando a tela: se acontecer de você executar more
ou
cat
em um arquivo binário, sua tela pode ficar cheia de lixo.
Para consertar, digite reset
, ou esta seqüência de caracteres:
echo CTRL-V ESC c RETURN
.
Colando texto: no console, veja abaixo; no X, clique e arraste para
selecionar o texto um janela xterm
, e depois clique o botão do meio
(ou os dois botões juntos se você tiver um mouse de 2 botões) para
colar. Há também o xclipboard
(aliás, somente para texto);
não se confunda pela demora da resposta.
Usando o mouse: se você instalou o gpm
, um driver de mouse
para o console, você pode clicar e arrastar para selecionar texto, e
dpois clicar para colar o texto selecionado. Funciona de um VC
("virtual console") para outro.
Mensagens do kernel: dê uma olhada em /var/adm/messages
ou
/var/log/messages
como root para ver o que o kernel tem a lhe
dizer, incluindo mensagens de boot. O comando dmesg
também é útil.
Se você está pensando se existem aplicativos para substituir os seus
antigos do DOS/Win, eu sugiro que você consulte os principais
repositórios de software para Linux:
ftp://sunsite.unc.edu/pub/Linux
,
ftp://tsx-11.mit.edu/pub/linux
, e
ftp://ftp.funet.fi/pub/Linux
.
Outro excelente lugar é a "Linux Applications and Utilities Page" em
http://www.xnet.com/~blatura/linapps.shtml
.
O Linux pode fazer um monte de coisas que eram chatas, difíceis ou impossíveis de se fazer no DOS/Win. Aqui está uma pequena lista que pode aguçar seu apetite:
at
permite rodar programas em uma hora determinada;
awk
é uma linguagem, simples mas poderosa, para manipular
arquivos de dados (e mais). Por exemplo, sendo data.dat
seu
arquivo de dados multi-campos,
$ awk '$2 ~ "abc" {print $1, "\t", $4}' data.dat
imprime os campos 1 e 4 de cada linha de data.dat
cujo segundo campo
contenha "abc".
cron
é útil para fazer tarefas periodicamente, em determinadas
datas e horas. Digite man 5 crontab
.
file <arquivo>
diz o que é o arquivo
(texto ASCII, executável, pacote, etc.);
find
(veja também a Seção
Diretórios: Traduzindo Comandos) é um dos comandos mais
poderosos e mais úteis. É usado para encontrar arquivos que
correspondam a várias características dadas, e para desempenhar ações
sobre esses arquivos. O uso geral de find
é:
$ find <diretório> <expressão>
onde <expressão> inclui critérios de busca e ações. Exemplos:
$ find . -type l -exec ls -l {} \;
encontra todos os arquivos que sejam links simbólicos e mostra para o que
cada um aponta.
$ find / -name "*.old" -ok rm {} \;
encontra todos os arquivos que correspondam ao padrão e os apaga,
pedindo sua confirmação antes.
$ find . -perm +111
encontra todos os arquivos cujas permissões correspondam a 111 (executável).
$ find . -user root
encontra todos os arquivos que pertençam a root. Há várias
possibilidades aqui---LPM.
grep
encontra padrões de texto em arquivos. Por exemplo,
$ grep -l "geologia" *.tex
lista os arquivos *.tex que contenham a palavra "geology". A variante
zgrep
funciona em arquivos gzipados. LPM;
^a[^a-m]X{4,}txt$
corresponde a uma linha que começa com `a',
seguida por qualquer caractere exceto os que estão no intervalo a-m,
seguido por 4 ou mais `X', e termina com `txt'. Expressões regulares
são usadas em editores avançados, less
, e muitos outros
programas. Digite man grep
para uma introdução.
script <arquivo_script>
copia o conteúdo da tela em
arquivo_script
até que você digite o comando exit
. Útil para
depuração;
sudo
permite que os usuários façam algumas das tarefas do
root (p.ex., formatar e montar discos; LPM);
uname -a
dá informações sobre o seu sistema;
bc, cal, chsh, cmp,
cut, fmt, head, hexdump, nl, passwd, printf, sort, split, strings, tac,
tail, tee, touch, uniq, w, wall, wc, whereis, write, xargs, znew.
LPM.
Você pode se deparar com várias extensões de arquivos. Excluindo as mais exóticas (i.e. fontes, etc.), aqui está uma lista de quem é o que:
1 ... 8
: man pages. No caso improvável de você ainda não
ter, pegue o man
.
arj
: pacote feito com o arj
.
dvi
: arquivo de saída produzido pelo TeX (veja
abaixo). xdvi
para visualizá-lo; dvips
para transformá-lo em
arquivo PostScript .ps
.
gz
: pacote feito com gzip
.
info
: arquivo info (tipo de alternativa às man pages).
Pegue o info
.
lsm
: arquivo do Linux Software Map. É um arquivo ASCII
contendo a descrição de um pacote.
ps
: arquivo PostScript. Para visualizá-lo ou imprimi-lo
pegue gs
e, opcionalmente, ghostview
ou gv
.
rpm
: pacote Red Hat. Você pode instalá-lo em qualquer
sistema usando o gerenciador de pacotes rpm
.
taz, tar.Z
: pacote feito com o tar
e compactado com
compress
.
tgz, tar.gz
: pacote feito com o tar
e compactado com
gzip
.
tex
: arquivo texto a ser submetido ao TeX, um poderoso
sistema de composição. Pegue o pacote tex
, disponível em várias
distribuições; mas cuidado com o NTeX, que tem fontes corrompidas e é
incluído em algumas versões do Slackware.
texi
: arquivo texinfo, que pode produzir tanto arquivos TeX
como info (qv. info
). Pegue o texinfo
.
xbm, xpm, xwd
: arquivo gráfico. Pegue o xpaint
.
Z
: pacote feito com compress
.
Se você precisar intercambiar arquivos texto entre DOS/Win e Linux,
cuidado com o problema do "fim de linha". No DOS, cada linha termina
com CR/LF ("carriage return" e "line feed"), enquanto no Linux
termina com LF. Se você tentar editar um arquivo texto do DOS no Linux,
cada linha provavelmente terminará com um estranho caractere `M'; um
texto do Linux sob o DOS aparecerá como uma única e quilométrica linha,
sem parágrafos. Há um par de ferramentas, dos2unix
e
unix2dos
, para converter os arquivos. [NT: Há também o todos
, e o
utilitário tr
]
Se seus arquivos contiverem caracteres acentuados, assegure-se de que eles tenham sido feitos no Windows (com o Write ou Notepad, digamos) e não sob o DOS; caso contrário, todos os caracteres acentuados ficarão bagunçados .
Para converter arquivos Word ou WordPerfect para texto puro, a solução é
um pouco mais difícil, mas possível. Você precisará de uma das
ferramentas que podem ser encontradas nos sites CTAN; uma deles é
ftp://ftp.tex.ac.uk
.
Pegue o pacote word2x
do diretório /pub/tex/tools/',
ou tente um dos pacotes disponíveis no diretório
/pub/tex/support/. Eu só experimentei word2x
, e
funciona muito bem.