Principal
World Telecom
Unix
Java
Html 
Icq
Links
Programas
Dicas
Mp3
Diversão
Jornais
Web Buscas
mIRC
Apostilas
Radios
Programação
Contato
WebJunior - :)

 

 
 

UMA BREVE INTRODUÇÃO SOBRE UNIX 

     O Unix é um sistema operacional desenvolvido em 1969, pela Bell Laboratories, originalmente para executar em computadores da DEC, sendo que mais tarde passou a; ser utilizado em mainframes.
Num sentido menos amplo o UNIX é um sistema operacional de tempo compartilhado, denominado kernel. O kernel é um programa que controla os recursos do computador e os aloca entre os usuários. Ele controla os programas e periféricos (disco, terminais, impressoras, etc.) que estão ligados à máquina.
O UNIX possui algumas características como:
•Capacidade de multitarefa
•Mutiusuários
•Portabilidade
•Conectividade e comunicações

•PARA QUEM USA DOS
Para quem está acostumado com o DOS, notará algumas diferenças, como os nomes de arquivos, que no DOS tem apenas 8 de nome e 3 de extenção, no UNIX não tem limite podendo ter várias extenções. Ex: relatorio.txt.zip.tar.  Outro detalhe é por ser um sistema mutiusuário, a entrada ao sistema é feita com um login e um password, onde login é o nome do usuário e password é uma senha de segurança.

•PERMISSÕES DE  ARQUIVOS
No Unix existe uma sequência de caracteres que definem o que cada  usuário pode fazer com cada arquivo ou diretório e somente o dono do arquivo (owner) e o gerente da rede (root) pode mudar as permissões atraves do comando chmod. Essa sequência é:

d       rwx     rwx    rwx
 |          |          |          |             Onde:
tipo dono grupo outros         r=leitura
                                             w=escrita (gravação)
                                             x=execução

•Tipo - é o tipo do arquivo e pode ser:
  •d = diretório
  •b = block
  •r = raw
  •l = simbolic link
•Dono - dono do arquivo, o dono é quem o criou ou  copiou.
•Grupo - grupo de usuários a que o dono pertence (exemplo: grupo  alunos ou grupo professores)
•Outros - demais usuários, o resto das  pessoas que tem o acesso ao arquivo
Exemplo de permissão para um arquivo: Pode ser verificado com o comando ls -l:

->ls -l
-rwxrw-r--  2  cris   16345  May  12   9:02   file

•DETALHES IMPORTANTES
•O Unix é sensível a caixa das letras, isto é, se um comando é em letra minúscula não pode ser digitado em    maiúscula ou se um parâmetro do comando for em maiúscula tem que ser digitado em maiúscula
•Existem arquivos e diretórios escondidos. Para esconder basta colocar um . no começo do nome (.plan)
•Pode-se executar vários comandos na mesma linha utilizando o caracter ;
 
 
CONCEITOS:
 

•PROCESSOS EM BACKGROUD
Os comandos do UNIX podem ser executados e ser liberado o prompt para continuar o trabalho na mãquina.
Se um comando leva algum tempo para mostrar o seu resultado (como um download de algum arquivo) pode ser colocado um & no final da linha de comando.
Exemplo:
# find / -name *.* &
Pode-se também, enquanto o comando já está sendo executado, teclar ctrl + z. Com isso o comando será suspenso e o sistema largará o prompt. Para fazer com que o comando suspendido rode em background é teclado o comando bg (background). Com o comando jobs é mostrado todos os comandos que estão em segundo plano e um número de identificação que serve para coloca-lo em primeiro plano com o comando fg (foreground) e o número de identificação.
Exemplo:
#ftp ftp.site.com    <----- comando demorado!
(ctrl + z)                 <----- ctrl+z para suspender
Suspended
#jobs                      <----- comandos em background
[1] find / -name *.* & Running
[2] ftp ftp.site.com  Running
#fg 2                      <----- job 2 em foreground
ftp>                       <-----resultado

•ENDEREÇOS DE USUÁRIOS

•ENTRADA E SAÍDA
Quase todos os comandos Unix tem uma entrada e produzem uma saída, a entrada de um comando são os dados que o comando vai processar, essa entrada pode vir de um arquivo especificado pelo usuário, de um arquivo do sistema, do terminal ou da saída de outro comando. A saída de um comando são os dados de entrada processados , a saída de um comando pode ser impressa na tela de um terminal, enviada a um arquivo, ou servir de entrada a um outro comando.
Existe uma entrada padrão e uma saída padrão.

Entrada padrão:
A maioria dos comandos Unix permite que você informe a entrada de dados, geralmente informando o nome de um arquivo que contém os dados a serem processados pelo comando, mas caso esta entrada seja omitida, o programa utiliza automaticamente a entrada padrão para receber os dados a serem processados pelo comando, normalmente a entrada padrão é o teclado do terminal.

Saída padrão:
Por default a saída dos dados processados pelo comando são para a saída padrão que é o monitor do terminal que você está usando, mas você também pode usar esta saída para ciar ou adicionar dados a um arquivo ou simplesmente usa-la como entrada para outro comando qualquer.

Redirecionamento:
No sistema Unix é possível o redirecionamento da entrada padrão, da saída padrão, e ainda possibilitar que a saída de um comando seja a entrada e outro, todos estes recursos são acessados através de símbolos,
são eles o de direcionamento de saída para um arquivo >, o de redirecionamento de um arquivo como entrada <, e o símbolo que direciona a saída de um programa para a entrada de outro |.

Redirecionamento de saída:
Para redirecionar a saída de um comando para um arquivo, você deve inserir o símbolo > depois de todos os parâmetros do comando, e por último por o nome do arquivo que irá receber os dados processados, por exemplo:
%ls -lap > meu.diretorio Esta linha de comando criará o arquivo "meu.diretorio" com o conteúdo da saída do comando "ls -lap", caso o arquivo "meu.diretorio" já existisse no diretório corrente o mesmo seria sobrescrito, para que isto não ocorra, ou seja para que os dados sejam acrescentados no arquivo, ao invés de usar ">" use ">>", assim os dados serão inseridos no fim do arquivo já existente sem sobreescrever o seu conteúdo.

Redirecionamento de entrada:
Para redirecionar a entrada que deveria ser feita através do teclado para um arquivo que já contenha os dados da entrada você deve usar o símbolo "<" depois de todos os parâmetros do comando, e por último por o nome do arquivo que contém os dados a serem processados, por exemplo:
%grep -e teste < meu.diretorio Esta linha executará o comando grep como se você tivesse digitado todo o conteúdo do arquivo "meu.diretorio" como um texto para ser processado pelo comando.
 

Redirecionamento da saída para a entrada (pipeline):
Para redirecionar a saída padrão de um comando para a entrada padrão de outro você deve usar o símbolo "|" para separar um comando do outro, este símbolo segue a mesma sintaxe do encadeamento de comandos, com a diferença que a saída do comando é usada como entrada do próximo comando encadeado, o último comando colocará sua saída na saída padrão. Por exemplo:
%ls -lap | sort | grep -e teste | wc -l Esta linha de comando usará a saída do comando ls como entrada do comando sort que direcionará a saída para o comando grep, e este irá direcionar sua saída para o comando wc, que por sua vez irá apresentar sua saída na tela.
 
 
COMANDOS BÁSICOS: 

• ls

Comando ls
------------------------------------------------------------------------
Esse comando mostra o conteúdo de um diretório. É equivalente ao comando dir do DOS.
O comando list mostra os arquivos existentes ordenados em ordem alfabética. O ls como outros comandos tem opções para apresentar outras informações.

Sintaxe
ls [-latRF] [arquivo]

Parametros
• -t = lista os arquivos em ordem de criação
• -a = lista todos os arquivos, inclusive os escondidos
• -F = acrescenta os seguintes caracteres no final dos arquivos:
 •  / - diretório
 •  @ - link
 •  * - executável
• -R = lista todos os arquivos e subdiretórios
• -l = lista de uma forma completa

Exemplos
->ls
relatorio.txt   Files   mbox  exemplo.html
->ls -l
-rw-r--r--  1 cris        3023  Jun     3   19:22   relatorio.txt
drw-r--r-- 1 cris           512  Jun   19   15:10   Files
-rw-------  1 cris    403990  Agu  22   16:56   mbox
-rw-r--r--  1 cris    134780  May  17   10:38  exemplo.html
->ls -f rel*
relatorio.txt
->ls -lf rel*
-rw-r--r--  1 cris    3023      Jun      3    19:22  relatorio.
• cat

Comando cat
------------------------------------------------------------------------
O comando cat mostra o conteúdo de arquivos, geralmente do tipo texto. Funciona bem com arquivos pequenos, mas se o arquivo for grande o texto rolará e o usurário não conseguirá ler o conteúdo do arquivo.
Serve também para criação de arquivos texto pequenos do tipo lembretes, para isso basta direciona-lo com > para o nome do arquivo a ser criado (segue exemplo).

Sintaxe
cat arquivo [arquivo2] [aquivo3]

Exemplo
->cat lista_de_compras       <-- mostra o conteúdo
sabao em po
leite
pao
alface
tomate
->cat < lista_de_compras    <-- cria um novo arquivo

• more

Comando more
------------------------------------------------------------------------
O comando more assim como o cat serve para ver o conteúdo de um arquivo que é, geralmente, texto. A diferença entre o more e o cat é que o more faz uma pausa a cada tela cheia exibindo uma mensagem "--More--", dando uma oportunidade ao usuário ler a tela. Existem vários comandos que são listados ao apertar h mas os mais usados são:
•enter exibe mais uma linha do texto
•espaço exibe mais uma pagina do texto
•ctrl+l rescreve a tela
•v chama o editor de textos vi do Unix para a linha corrente

Sintaxe
more arquivo

Parametros
Esse comando não possui parâmetros.
 
 
 
 

Exemplos
->more index.txt
File                        Contents
=========                =========
ntie30b2.exe             US English versionInternet Explorer 3.0 Beta 2
                         for Windows NT
cnmsie30b2.exe           Simplified Chinese Version of Microsoft Internet
                         Explorer 3.0 Beta 2 for Windows 95.  Self  extracting,
                         self  installing.
dentie30b2.exe           German Version of Microsoft Internet Explorer
                         3.0 Beta 2 for Windows NT 4.0 Beta 2 (build 1314).
                         Self extracting, self installing.
--More--(31%)

• cal

Comando cal
------------------------------------------------------------------------
Este comando é usado para exibir o calendário de um determinado mês ou ano.

Observação
o mês deve ser completo, pois o cal difere 95 de 1995. Caso somente um número seja informado será exibido o calendário daquele ano, se nenhum numero for fornecido será exibido o calendário do mês corrente, anterior e posterior.

Sintaxe
cal [-r] [mês] [ano]
 

Exemplos
->cal  8 1996
->cal  2000

• mkdir

Comando mkdir
------------------------------------------------------------------------
Serve para criar diretórios e subdiretórios especificados.

Sintaxe
mkdir diretório

Parâmetros
Esse comando não possui parâmetros.

Exemplos
->mkdir temp
->mkdir files
->mkdir html/curso

• rmdir

Comando rmdir
----------------------------------------------------------------------
Serve para remover diretórios e subdiretórios especificados.

Sintaxe
rmdir diretório

Parametros
Esse comando não possui parâmetros.

Exemplos
->rmdir temp
->rmdir html/curso
->rmdir files

• cp

Comando cp
------------------------------------------------------------------------
Esse comando é útil para copiar arquivos e diretórios para outros diretórios. Semelhante ao comando copy do DOS.

Sintaxe
cp [-r] nome1 nome2

Parametros
•  -r = copia o conteúdo dos subdiretórios caso nome1 for um diretório

Exemplos
->cp relatorio.txt Files
->cp rel* Files
->cp -r Files ..\Files2

• mv

Comando mv
------------------------------------------------------------------------
Esse comando é útil para mover arquivos e diretórios. Também é usado para renomear tanto arquivos quanto diretórios, pois o Unix não possui um comando especifico para trocar os nomes de arquivos. Muito cuidado ao mover ou renomear um arquivo, verifique se não exista um outro com o mesmo nome, senão o arquivo existente irá ser substituído pelo outro.

Sintaxe
mv [-i] nome1 nome2

Parametros
•  -i = pergunta confirmação ao mover

Exemplos
->mv relatorio.txt Files
->mv -i rel* Files
->mv Files files

• rm

Comando rm
------------------------------------------------------------------------
Esse comando é útil para remover arquivos e diretórios. Mas cuidado ao usar o comando rm, pois o Unix não consegue recuperar arquivos, se por acaso usar o parâmetro -r em um diretório. Semelhante aos comandos del e deltree do DOS.

Sintaxe
rm [-ir] nome1

Parametros
•  -r = remove o conteúdo dos subdiretórios caso nome1 for um diretório
•  -i = pergunta confirmação para os arquivos

Exemplos
->rm relatorio.txt
->rm -i rel*
->rm -r ..\Files

• find

Comando find
------------------------------------------------------------------------
Procura por um determinado arquivo no winchester apartir do diretório especificado dando uma lista de quais diretórios se encontra o arquivo especificado.

Sintaxe
find diretório [-parâmetros]

Parametros
• -name arquivo = indica o arquivo a ser procurado
• -user usuário = indica que o arquivo tem que pertencer a o usuário indicado
• -group grupo = indica que o arquivo tem que pertencer a o grupo indicado
• -mtime n = procura os arquivos que foram modificados nos exatos n dias
• -print = imprime o nome do arquivo na tela, é sempre necessário pois sem ele não irá ser mostrado nada
• -exec comando {} \; = executa o comando para todos os arquivos encontrados o {} \; faz parte da sintaxe e é substituído pelo nome do arquivo e é necessário o espaço entre as chaves e a barra

Exemplos
->find files -name relatorio.txt -print
->find / -name teste.c -user cris -exec rm {} \;
             ^--- esse exmplo ira procurar todos os arquivos teste.c apartir da raiz irá usar o comando rm quando              achar o arquivo
->find /tmp -user cris -print

• grep

Comando grep
------------------------------------------------------------------------
Procura pela ocorrência de uma string no arquivo especificado. Ele exibe apenas as linhas que possuem a string mas cuidado com os caracters interpretados pelo shell (, ), {, }, ;, ?, !, *, [, e ] use um apóstrofo para isolar esses caracteres.

Sintaxe
grep [-parâmetros] expressão arquivo

Parametros
• -v = mostra as linhas que não aparece a string
• -i = ignora a diferença entre letras maiúsculas e minúsculas
• -c = mostra o número de vezes que foi encontrada a expressão
• -n coloca o número da linha em que foi  encontrada a expressão

Exemplos
->grep -i palavra index.txt

• vi
 
 
Editor vi 

------------------------------------------------------------------------
O editor vi (visual) é o único editor de texto para Unix, e apesar ter
uma interface pouco amigável é muito poderoso com muitos recursos.
Ele não é um formatador de textos, isto é, não trabalha com justificação
ou formatação de caracteres (bold, itálico, etc), portanto o texto
produzido com o vi não tem uma aparência muito agradável. Ele foi criado
para ser usado com formatadores separados o nroff e o troff.

Esse editor possui três modos:

Modo                                            Descrição

insert                      modo usado para a digitação onde se entra com os
                                caracteres que compõem texto esse modo é acionado com os comandos
                                respectivos do modo escape

escape                     é acionado pela tecla ESC e usado para
                                a movimentação de caracteres e voltar para o modo insert isto é feito
                                apartir de comandos simples. Seus comandos não aparecem na tela.

last                         é acionado com : usado para a entrada de comandos especiais
line                        diferentes do comandos do modo escape, são comandos para substituição,
                               localização, movimentação de texto, gravar e executar comandos do shell
                               sem sair do vi. Após teclar : irá aparecer na ultima linha esse sinal
                               para a digitação dos comandos.

Sintaxe
vi [+/expressão] [arquivo]

Parametros:
• +/ - usado para iniciar o texto onde for encontrado a palavra  expressão, se a palavra tiver espaços deve estar entre aspas. Se usar só o comando + sozinho irá começar no final do texto
• arquivo - texto a ser editado

Exemplo
->vi propostas.txt
->vi +/"Recursos de Vendas" propostas.txt

• chmod

Comando chmod
------------------------------------------------------------------------
Muda a permição dos arquivos e diretórios. As permissões de arquivos estão detalhadas no tópico Permissões de Arquivos ao lado esquerdo da página.

Sintaxe
chmod [-fR] quem+/-permissão arquivo

Parametros
•  -R = troca para arquivos que estão em subdiretórios
•  -f = caso ocorra algum erro ele força a troca de permissão
•  quem = é a classe do usúario (ugoa) para quem vai receber a permissão nova
•  u = usuário
•  g = grupo
•  o = outros
•  a = todas as classes juntos (all)
•  +/-/= = mais, menos ou igual define se você vai colocar (+) ou tirar (-) a permissão, o sinal = serve para trocar a permissão se ele tiver com permissao ele tira a permissão
•  permissão = tipo de permissão (rwx)
•  r = leitura
•  w = escrita
•  x = execução

Exemplos
->chmod a+rx teste
        ^permissão de leitura e execução
         para todas classes de usuários
->chmod -R g=x teste
           ^da a permissão a quem não tem
            e tira de que tem para o grupo
            que você pertence em todos os subdiretórios

• cd

Comando cd
------------------------------------------------------------------------
Muda de diretório, equivale ao mesmo comando do DOS. Como o Unix não mostra o diretórios corrente no prompt como o DOS pode-se usar o comando pwd para mostrar o diretórios corrente. Nã esqueça que o diretório principal é simbolizado por / (diferente a do DOS).

Sintaxe
cd [diretório]

Parametros
•  diretório = o diretório ou o caminho de um para qual você quer ir

Exemplos
->cd meudir
->cd /
->cd /home/users/cris/meudir
 
 

•pwd

Comando pwd
------------------------------------------------------------------------
Mostra o diretório corrente em que você está. O Unix não mostra o diretórios corrente no prompt como o DOS

Sintaxe
pwd

Parametros
Esse comando não possui parametros

Exemplos
->pwd
/home/users/cris

•at

Comando at
------------------------------------------------------------------------
Processa um comando ou arquivo script para ser processados posteriormente numa hora, dia ou mês desejado. O at , após a sua sintaxe, deixa espaço para colorar os comandos ou arquivos script que serão processados posteriormente (use ^d quando acabar de digitar os comandos) ou pode-se especificar um arquivo para entrada com < para dar entrada um arquivo ja criado.

Sintaxe
at [-lr] hora [data] [+incremento]

Parametros
•  -l= lista todos os jobs programados com at e o número designado para cada um. Mostra aqueles que voce mesmo programou.
•  -r= remove um job at que você colocou. Mas antes é preciso saber o número e fila em que está o job mostrado com a opção -l
•  hora= uma hora qualquer, melhor no padrão 24hs. Além o at também reconhece as horas now (agora), midnight (meia-noite), noon (meio-dia).
•  data= você pode especificar uma data também. A data é no formato mes dia(,ano) ou dia da semanda (sun, mon, wen, .... Pode preceder a data next (próximo).
•  +incremento= quanto tempo depois da data o at irá ser executado. é formado do símbolo + um número e uma unidade de tempo (minutes (minutos), hours (horas), days (dias), months (meses) e years (anos)
 
 
 

Exemplos
->at 12:32ls -l > dir.txt^d

->at now + 2 days < script

->at 12:32 nov 1 + 2 hours
mail [email protected] < relatorio.txt
^d

->at 12:32 next wed

•ln

Comando ln
------------------------------------------------------------------------
O comando ln faz um atalho (link) de um arquivo ou diretório. Voce pode se referir a um arquivo que está num diretório /bin por exemplo no seu diretório home somente fazendo um link do mesmo. Existe dois tipos de link o hard link e o simbolic link (simbolico), o primeiro tipo faz um link onde irá apontar para o lugar no winchester onde o arquivo esta amarzenado, o segundo tipo é um link simbólico pois o link é um arquivo texto que contem o path de onde o arquivo está. Isto quer dizer se voce apagar um hard link ira excluir o arquivo e se apagar um simbolic link irá apagar somente o link.

Sintaxe
ln [-sf] arquivo nomelink

Parametros
•  -s = cria um simbolic link (hrad link é criado sem esse parametro)
•  -f = força a criação do link, para links que não se tem permição de leitura
•  arquivo = nome do arquivo ou diretório que vai ser linkado
•  nomelink = nome do link pode ser qualquer um, mas o interssante e colocar o mesmo nome do arquivo ou diretório.

Exemplos
% pwd
/home/user/cris
% ln -s /bin/tmp symlink
% cd symlink
% pwd
/bin/tmp

 

 

 

 

 

 

 

Clécio Marquetti

World Telecom - 2000

© CopyRight - Todos os Direitos Reservados

 
1