Ambiente Shell / Linux


  1. Depois de fazer login será automaticamente "colocado" no seu directório. O seu directório é a parte do sistema de ficheiros reservada para os seus ficheiros. Experimente o comando pwd para ver aonde está neste momento.
  2. Poderá modificar a sua palavra passe inicial recorrendo ao comando passwd.
  3. Para obter ajuda sobre os comandos da linha de comandos utilize o comando man. Experimente o seguinte:
    1. man ls
    2. man cp
    3. man rm
    4. man man
  4. Experimente os seguintes comandos para saber mais sobre os utilizadores do sistema:
    1. who
    2. whoami
    3. finger
  5. O que faz cada um dos seguintes comandos?
    1. ls *
    2. ls *.c
    3. ls ?.c
    4. ls [a-c]*
    5. ls [a-z]*
    6. ls ??[c]*
    7. ls ?[e]
    8. ls [A-Za-z]*
    9. ls dir*/*.c
  6. Qual a diferença entre utilizar o comando ls -l e ls -la?
  7. Crie um directório chamado ComplProg. Entre nesse directório e crie outro chamado exercicios. Mostre o conteúdo do directório ComplProg. Remova o directório exercicios e crie um novo chamado exerc. Mude o nome do directório exerc para exercicios.
  8. Redireccione o "output" do comando man para um ficheiro. Por exemplo, man ls > ls.man. Verifique o resultado usando o comando cat ou o comando more.
  9. Experimente os seguintes comandos:

    echo 'um' > ficheiro.tmp
    echo 'dois' > ficheiro.tmp

           Qual é o conteúdo de ficheiro.tmp? Se usar alternativamente os seguintes comandos:

    echo 'um' > ficheiro.tmp
    echo 'dois' >> ficheiro.tmp

           Qual é o conteúdo de ficheiro.tmp? Porquê?

  10. O comando sort serve para ordenar linhas de ficheiros de texto. Crie um ficheiro com diversas palavras separadas linha a linha. Experimente o seguinte:

    sort < ficheiro > ficheiro.ordenado

    Qual é o resultado? Porquê?

  11. Consulte a página do manual do comando grep. Supondo que tem um ficheiro com um programa em linguagem C chamado ficheiro.c, explique o que faz cada uma das instruções seguintes:
    1. grep -n main ficheiro.c
    2. grep main *
    3. grep -v main ficheiro.c
    4. grep -c main ficheiro.c
    5. grep -cv main ficheiro.c
  12. Consulte a página do manual do comando find. O que faz cada uma das linhas seguintes?
    1. find /home -name 'trabalho.c'
    2. find . -name '*.c' -ls
    3. find  ~ -name 'core' -exec rm {} \
  13.  Uma boa ferramenta para fazer cópia(s) de segurança do seu trabalho é o tar. Consulte a página de manual do tar e diga o que faz cada uma das seguintes linhas:
    1. tar cvf backup.tar .
    2. tar tvf backup.tar

    Como é que pode compactar um ficheiro tar?

  14. Consulte a página do manual referente ao comando ps. Experimente visualizar os processos existentes no seu sistema. Pode experimentar ps e ps aux.
  15. Consulte a página de manual para o comando kill.
  16. Experimente iniciar um processo que não faça nada durante 5 minutos:

        sleep 5m

    Se agora tentar introduzir algum comando o que acontece? Para acabar um processo que corre em "foreground" faça CTRL-C. Acabe com o processo sleep 5m. O que acontece se introduzir comandos agora?

  17. Inicie outro processo, desta vez em "background":

        sleep 5m &

    Tente introduzir outros comandos. O que acontece?

  18. Utilize o comando jobs. O que vê?
  19. Inicie mais dois processos em background:

    sleep 10m &
    sleep 15m &

    Utilize novamente o comando jobs e analise o resultado.

  20. Traga o segundo processo para "foreground" com fg %2. O que aconteceu?
  21. Suspenda o processo com CTRL-Z. Experimente novamente o jobs. O que vê?
  22. Coloque o processo novamente em "background" com bg %2.
  23. Use o comando kill %2 e em seguida o jobs. O que vê?
  24. Use o comando ps para ver os processos que correm e acabe com os sleeps recorrendo ao seu PID. Execute novamente o comando ps para verificar o que aconteceu.
  25. Experimente alguns comandos da lista resumida de comandos UNIX.
Voltar

Complementos de Programação - ISEP 2003
HTML Válido