Jump to content

Recommended Posts

Posted

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

?

Posted

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

<3 life

Posted

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 🙂

"Nunca discutas com um idiota. Eles arrastam-te até ao seu nível e depois ganham-te em experiência"

Posted

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.  🙂

"Nunca discutas com um idiota. Eles arrastam-te até ao seu nível e depois ganham-te em experiência"

Posted

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

"Nunca discutas com um idiota. Eles arrastam-te até ao seu nível e depois ganham-te em experiência"

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.