SlideShare uma empresa Scribd logo
1 de 4
Baixar para ler offline
Exercícios Resolvidos
                                      ­Shell Script­
   1. Crie uma Script que lê 2 números e determine a adição e multiplicação destes.

      #!/bin/bash

      echo "Introduza o 1o. numero"
      read n1
      echo "Introduza o 2o. numero"
      read n2

      echo $[ $n1 + $n2 ]
      echo $[ $n1 * $n2 ]

   2. Crie uma Script que lê um numero e determine se o mesmo é par ou ímpar.
      #!/bin/bash

      echo "Introduza o numero"
      read no

      if [ $(($no%2)) = 0 ]
      then
      echo "Numero par"
      else
      echo "Numero impar"
      fi 

   3. Crie uma Script que imprime números de 1 a 5 usando ciclo for.
      #!/bin/sh
      for i in 1 2 3 4 5
      do
      echo "Numero $i"
      done

   4. Crie uma Script usando ciclo for que imprime valores de 10  a 0;
      #!/bin/bash

      for (( i=10; i>=0; i­­ ))
      do
      echo $i
      done

   5. Script que cria directórios de acordo com um número de directórios especificado pelo usuário 
      bem como as letras iniciais dos directórios a criar.

Sistema Operativos Avançados                                                  dr. Jonnathan Guambe
#!/bin/bash
      echo "Introduza o nr. de directorios a criar"
      read nrDirs

      echo "Introduza as letras iniciais dos directorios a criar"
      read ltIni

      #seq 2 $nrDirs ­ cria uma sequencia de 1 ao numero 
      #de directorios especificados pelo usuario
      for ndir in `seq 1 $nrDirs`; do
      mkdir $ltIni$ndir
      done

   6. Crie um script, que ao ser executado liste as seguintes opções: 
      Solicite o nome do directório desejado, entre nesse directório e liste seu conteúdo. 
      1 ­ Solicita o nome do arquivo a ser impresso. 
      2 ­ Solicita o nome do arquivo a ser editado. 
      3 ­ Solicita o nome do arquivo a ser excluído. 
      4 ­ Para sair do script.
              #!/bin/bash
              linha="­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­"
              echo "Introduza o directorio a operar"
              read dir

              echo "­­­­­Entrando no directorio­­­­"
              cd $dir
              echo "­­­­­Listando conteudos­­­­"
              ls $dir
              echo "­­­­­Fim da Listagem­­­­"

              echo "­­­­­­­­­­­­­­Escolha sua opcao­­­­­­­­­­­­­"
              echo $linha
              echo "1 ­ Mostrar conteudo de um ficheiro"
              echo "2 ­ Editar um ficheiro"
              echo "3 ­ Remover ficheiro"
              echo $linha
              read opcao
              echo ""

              echo "Indique o nome do ficheiro"
              read fich

              case $opcao in


Sistema Operativos Avançados                                                      dr. Jonnathan Guambe
1) cat $fich
                      ;;
                      2) gedit $fich
                      ;;
                      3) rm $fich
                      ;;
                      *)
                      echo "Opcao invalida"
               esac


    7. Escreva um conjunto de scripts para efectuar gestão de remoção de arquivos. A script del deve 
       mover os arquivos passados como parâmetros para um directório lixeira; o script undel deve 
       mover arquivos da lixeira para o directório corrente e o script lsdel deve listar o conteúdo da 
       lixeira. O directório lixeira deve ser definido através da variável de ambiente $LIXEIRA. 
       R:
       Antes de correr as scripts, garantir que o directório que servira como lixeira existe e definir a 
variável de ambiente executando na linha de comando o seguinte: export LIXEIRA=/tmp/lixo
       Script del.sh:
       #!/bin/bash

       #$@ ­ Serve para buscar todos argumentos de uma única vez
       #$LIXEIRA – Variável de ambiente definido anteriormente
       mv $@ $LIXEIRA

       ==>Exemplo da execução do exercício anterior executando na linha de comando:
       $touch test{1,2,3,7,9}.txt
       $mkdir /tmp/lixo
       $export LIXEIRA=/tmp/lixo
       $./del.sh test1.txt test3.txt test9.txt

       Script undel.sh:
       #!/bin/bash

       #$@ ­ Serve para buscar todos argumentos de uma única vez
       #$LIXEIRA – Variável de ambiente definido anteriormente
       #. ­ refere ao directório local
       mv $LIXEIRA/* .

       Script lsdel.sh:
       #!/bin/bash

       #$@ ­ Serve para buscar todos argumentos de uma única vez
       #$LIXEIRA – Variável de ambiente definido anteriormente


Sistema Operativos Avançados                                                       dr. Jonnathan Guambe
ls ­lh $LIXEIRA




Sistema Operativos Avançados    dr. Jonnathan Guambe

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Shell scripting
Shell scriptingShell scripting
Shell scripting
 
Ch3 gnu make
Ch3 gnu makeCh3 gnu make
Ch3 gnu make
 
Course 102: Lecture 27: FileSystems in Linux (Part 2)
Course 102: Lecture 27: FileSystems in Linux (Part 2)Course 102: Lecture 27: FileSystems in Linux (Part 2)
Course 102: Lecture 27: FileSystems in Linux (Part 2)
 
Linux Basic commands and VI Editor
Linux Basic commands and VI EditorLinux Basic commands and VI Editor
Linux Basic commands and VI Editor
 
Basic 50 linus command
Basic 50 linus commandBasic 50 linus command
Basic 50 linus command
 
Course 102: Lecture 16: Process Management (Part 2)
Course 102: Lecture 16: Process Management (Part 2) Course 102: Lecture 16: Process Management (Part 2)
Course 102: Lecture 16: Process Management (Part 2)
 
Course 102: Lecture 12: Basic Text Handling
Course 102: Lecture 12: Basic Text Handling Course 102: Lecture 12: Basic Text Handling
Course 102: Lecture 12: Basic Text Handling
 
Course 102: Lecture 6: Seeking Help
Course 102: Lecture 6: Seeking HelpCourse 102: Lecture 6: Seeking Help
Course 102: Lecture 6: Seeking Help
 
Comandos Linux Parte 2
Comandos Linux Parte 2Comandos Linux Parte 2
Comandos Linux Parte 2
 
Bash Shell Scripting
Bash Shell ScriptingBash Shell Scripting
Bash Shell Scripting
 
Linux standard file system
Linux standard file systemLinux standard file system
Linux standard file system
 
Course 102: Lecture 13: Regular Expressions
Course 102: Lecture 13: Regular Expressions Course 102: Lecture 13: Regular Expressions
Course 102: Lecture 13: Regular Expressions
 
Terminal Commands (Linux - ubuntu) (part-1)
Terminal Commands  (Linux - ubuntu) (part-1)Terminal Commands  (Linux - ubuntu) (part-1)
Terminal Commands (Linux - ubuntu) (part-1)
 
Course 102: Lecture 28: Virtual FileSystems
Course 102: Lecture 28: Virtual FileSystems Course 102: Lecture 28: Virtual FileSystems
Course 102: Lecture 28: Virtual FileSystems
 
Introduction To Makefile
Introduction To MakefileIntroduction To Makefile
Introduction To Makefile
 
Linux basic commands with examples
Linux basic commands with examplesLinux basic commands with examples
Linux basic commands with examples
 
Course 102: Lecture 4: Using Wild Cards
Course 102: Lecture 4: Using Wild CardsCourse 102: Lecture 4: Using Wild Cards
Course 102: Lecture 4: Using Wild Cards
 
Course 102: Lecture 14: Users and Permissions
Course 102: Lecture 14: Users and PermissionsCourse 102: Lecture 14: Users and Permissions
Course 102: Lecture 14: Users and Permissions
 
Linux Introduction (Commands)
Linux Introduction (Commands)Linux Introduction (Commands)
Linux Introduction (Commands)
 
Docker, LinuX Container
Docker, LinuX ContainerDocker, LinuX Container
Docker, LinuX Container
 

Semelhante a Soa cap2 exercicios resolvidos shell

Oficina shell
Oficina shellOficina shell
Oficina shell
apsegundo
 
Sapo sessions linux power tools
Sapo sessions linux power toolsSapo sessions linux power tools
Sapo sessions linux power tools
Armando Reis
 

Semelhante a Soa cap2 exercicios resolvidos shell (20)

Lpi+102
Lpi+102Lpi+102
Lpi+102
 
Linux shell
Linux shellLinux shell
Linux shell
 
Shell Script v0
Shell Script v0Shell Script v0
Shell Script v0
 
Introdução ao Shell Script (versão estendida)
Introdução ao Shell Script (versão estendida)Introdução ao Shell Script (versão estendida)
Introdução ao Shell Script (versão estendida)
 
Cap1exercicioscomandoslinux 121113112337-phpapp02
Cap1exercicioscomandoslinux 121113112337-phpapp02Cap1exercicioscomandoslinux 121113112337-phpapp02
Cap1exercicioscomandoslinux 121113112337-phpapp02
 
Shell script
Shell scriptShell script
Shell script
 
Comandos linux
Comandos linux Comandos linux
Comandos linux
 
Minicurso Comando Básicos
Minicurso Comando BásicosMinicurso Comando Básicos
Minicurso Comando Básicos
 
Cap1 exercicios comandos linux
Cap1 exercicios comandos linuxCap1 exercicios comandos linux
Cap1 exercicios comandos linux
 
shell bash Fpar aula6
shell bash Fpar aula6shell bash Fpar aula6
shell bash Fpar aula6
 
Shell Script
Shell ScriptShell Script
Shell Script
 
Shell Scipt - Comandos
Shell Scipt - ComandosShell Scipt - Comandos
Shell Scipt - Comandos
 
Shell Script - Controle de fluxo
Shell Script - Controle de fluxoShell Script - Controle de fluxo
Shell Script - Controle de fluxo
 
Soa cap2 exercicios
Soa cap2 exerciciosSoa cap2 exercicios
Soa cap2 exercicios
 
Oficina shell
Oficina shellOficina shell
Oficina shell
 
Sapo sessions linux power tools
Sapo sessions linux power toolsSapo sessions linux power tools
Sapo sessions linux power tools
 
Fpar aula5
Fpar aula5Fpar aula5
Fpar aula5
 
Introdução ao shell script no linux
Introdução ao shell script no linuxIntrodução ao shell script no linux
Introdução ao shell script no linux
 
Comandos linux
Comandos linuxComandos linux
Comandos linux
 
Oficina de shell script
Oficina de shell scriptOficina de shell script
Oficina de shell script
 

Mais de portal_Do_estudante

Mais de portal_Do_estudante (9)

Soa#cap4.1 gestor de pacotes
Soa#cap4.1   gestor de pacotesSoa#cap4.1   gestor de pacotes
Soa#cap4.1 gestor de pacotes
 
Soa#cap4.1 gestor de pacotes
Soa#cap4.1   gestor de pacotesSoa#cap4.1   gestor de pacotes
Soa#cap4.1 gestor de pacotes
 
Soa cap3 servicos de internet
Soa cap3   servicos de internetSoa cap3   servicos de internet
Soa cap3 servicos de internet
 
Soa cap4[1].4 ufw
Soa cap4[1].4   ufwSoa cap4[1].4   ufw
Soa cap4[1].4 ufw
 
Soa cap2 administracao de sistemas2 (slides)
Soa cap2 administracao de sistemas2 (slides)Soa cap2 administracao de sistemas2 (slides)
Soa cap2 administracao de sistemas2 (slides)
 
Soa cap2 admin-sistemas - manual
Soa cap2 admin-sistemas - manualSoa cap2 admin-sistemas - manual
Soa cap2 admin-sistemas - manual
 
Soa cap1 introducao a linux
Soa cap1 introducao a linuxSoa cap1 introducao a linux
Soa cap1 introducao a linux
 
Soa cap1 ubuntu
Soa cap1   ubuntuSoa cap1   ubuntu
Soa cap1 ubuntu
 
Cap1 exercicios comandos linux resolucao part i
Cap1 exercicios comandos linux   resolucao part iCap1 exercicios comandos linux   resolucao part i
Cap1 exercicios comandos linux resolucao part i
 

Soa cap2 exercicios resolvidos shell

  • 1. Exercícios Resolvidos ­Shell Script­ 1. Crie uma Script que lê 2 números e determine a adição e multiplicação destes. #!/bin/bash echo "Introduza o 1o. numero" read n1 echo "Introduza o 2o. numero" read n2 echo $[ $n1 + $n2 ] echo $[ $n1 * $n2 ] 2. Crie uma Script que lê um numero e determine se o mesmo é par ou ímpar. #!/bin/bash echo "Introduza o numero" read no if [ $(($no%2)) = 0 ] then echo "Numero par" else echo "Numero impar" fi  3. Crie uma Script que imprime números de 1 a 5 usando ciclo for. #!/bin/sh for i in 1 2 3 4 5 do echo "Numero $i" done 4. Crie uma Script usando ciclo for que imprime valores de 10  a 0; #!/bin/bash for (( i=10; i>=0; i­­ )) do echo $i done 5. Script que cria directórios de acordo com um número de directórios especificado pelo usuário  bem como as letras iniciais dos directórios a criar. Sistema Operativos Avançados  dr. Jonnathan Guambe
  • 2. #!/bin/bash echo "Introduza o nr. de directorios a criar" read nrDirs echo "Introduza as letras iniciais dos directorios a criar" read ltIni #seq 2 $nrDirs ­ cria uma sequencia de 1 ao numero  #de directorios especificados pelo usuario for ndir in `seq 1 $nrDirs`; do mkdir $ltIni$ndir done 6. Crie um script, que ao ser executado liste as seguintes opções:  Solicite o nome do directório desejado, entre nesse directório e liste seu conteúdo.  1 ­ Solicita o nome do arquivo a ser impresso.  2 ­ Solicita o nome do arquivo a ser editado.  3 ­ Solicita o nome do arquivo a ser excluído.  4 ­ Para sair do script. #!/bin/bash linha="­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­" echo "Introduza o directorio a operar" read dir echo "­­­­­Entrando no directorio­­­­" cd $dir echo "­­­­­Listando conteudos­­­­" ls $dir echo "­­­­­Fim da Listagem­­­­" echo "­­­­­­­­­­­­­­Escolha sua opcao­­­­­­­­­­­­­" echo $linha echo "1 ­ Mostrar conteudo de um ficheiro" echo "2 ­ Editar um ficheiro" echo "3 ­ Remover ficheiro" echo $linha read opcao echo "" echo "Indique o nome do ficheiro" read fich case $opcao in Sistema Operativos Avançados  dr. Jonnathan Guambe
  • 3. 1) cat $fich ;; 2) gedit $fich ;; 3) rm $fich ;; *) echo "Opcao invalida" esac 7. Escreva um conjunto de scripts para efectuar gestão de remoção de arquivos. A script del deve  mover os arquivos passados como parâmetros para um directório lixeira; o script undel deve  mover arquivos da lixeira para o directório corrente e o script lsdel deve listar o conteúdo da  lixeira. O directório lixeira deve ser definido através da variável de ambiente $LIXEIRA.  R: Antes de correr as scripts, garantir que o directório que servira como lixeira existe e definir a  variável de ambiente executando na linha de comando o seguinte: export LIXEIRA=/tmp/lixo Script del.sh: #!/bin/bash #$@ ­ Serve para buscar todos argumentos de uma única vez #$LIXEIRA – Variável de ambiente definido anteriormente mv $@ $LIXEIRA ==>Exemplo da execução do exercício anterior executando na linha de comando: $touch test{1,2,3,7,9}.txt $mkdir /tmp/lixo $export LIXEIRA=/tmp/lixo $./del.sh test1.txt test3.txt test9.txt Script undel.sh: #!/bin/bash #$@ ­ Serve para buscar todos argumentos de uma única vez #$LIXEIRA – Variável de ambiente definido anteriormente #. ­ refere ao directório local mv $LIXEIRA/* . Script lsdel.sh: #!/bin/bash #$@ ­ Serve para buscar todos argumentos de uma única vez #$LIXEIRA – Variável de ambiente definido anteriormente Sistema Operativos Avançados  dr. Jonnathan Guambe