• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Flashe

Ajuda para Teste

7 mensagens neste tópico

Bons dias caros amigos.. bem mais uma vez vou fazer um teste de programação e claro mais uma vez não entendo nada disto..A materia é shell script,C e linha de comandos e o teste é assim:

1 – Qual o resultado da seguinte sequência de comandos Windows:

For %i in (*.JPG) do mspaint /p %i

2 – Em duas linhas escreva os comandos CMD Windows para ler para uma variável um nome e depois mostra-lo.

3 – Em C, qual o significado de:

#include<stdio.h

4 – No Unix, o BASH facilita o uso de Job control

a)O que significa neste contexto JOB control

b)O que faz o comando fg

5 – Escrever um script de shell para apresentar uma mensagem diferente em função da hora do sistema:

-Bom dia

-Bom almoço

-Boa tarde

-Boa noite

Quem puder ajudar-me agradecia [[]] grats

:eek:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

1 - Imprime todos os JPEGs existentes no directório.

2 - Para mostrar o nome usas o comando echo.

3 - Vai incluir o ficheiro stdio.h no ficheiro onde o invocaste. É o ficheiro header associado ao standard input / output.

4 - Job control refers to the ability to selectively stop (suspend) the execution of processes and continue (resume) their execution at a later point. A user typically employs this facility via an interactive interface supplied jointly by the system's terminal driver and Bash.

fg

    fg [jobspec]

    Bring jobspec into the foreground and make it the current job. If jobspec is not supplied, the current job is used.

5 - Não sei Shell scripting, mas deve ser algo do género:

#!/bin/sh
# variavel hora:
hora=12
if [ $hora > 12 ] ; then
echo "Boa tarde,"
fi

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Em relação ao shell script é quase isso, mas convinha saberes a hora do sistema actual em vez de meter uma variável a tomar o valor. Ma spegando no que o Triton fez:

#!/bin/bash
# variavel hora:
hora=12

if [ $hora > 0 ]
then
echo "Bom dia,"
fi

if [ $hora > 11 ]
then
echo "Bom almoço,"
fi

if [ $hora > 13 ]
then
echo "Boa tarde,"
fi

if [ $hora > 20 ]
then
echo "Boa noite,"
fi

acho que já dá para desenrascar, mas não está certo porque também não pude testar (agora estou em Windows). Agora tens de adaptar isso melhor :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu ainda estive a pesquisar como obter a hora do sistema apartir da bash, mas não encontrei nada.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu ainda estive a pesquisar como obter a hora do sistema apartir da bash, mas não encontrei nada.

Se executarmos o comando date aparece a data e a hora. Para sacar só o campo da hora podemos fazer:

date | tr -s " " | cut -f4 -d ' ' 

Mas ai ficamos com um formato inválido para comparar. por isso é melhor pegar só nas horas:

date | tr -s " " | cut -f4 -d ' ' | cut -c1,2

Logo vou tentar resolver isto como deve de ser.  :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Aqui está o script completo:

#!/bin/bash

hora=$(date +%H)
echo $hora

if [ $hora -ge 20 ]
then
echo 'Boa noite'
elif [ $hora -gt 13 ]
then
echo 'Boa tarde'
elif [ $hora -gt 11 ]
then
echo 'Bom almoço'
elif [ $hora -ge 0 ]
then
echo 'Bom dia'
fi

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora