Enviado em 11/04/2012 - 23:57h
Buenas galera, tô com um problema para resolver na faculdade que é o seguinte:
Todos os semestres a coordenação do curso exige que o professor repasse a ela
os dias em que serão utilizados o laboratório. Essas datas baseiam-se nos dias
da semana em que são ministradas as aulas. Como nossa disciplina exige uso
intensivo do laboratório, o professor repassa à coordenação todas as datas
do semestre letivo em que são ministradas as aulas, para que possamos usar
o laboratório 100% do tempo disponível. Esse é um processo trabalhoso,
que envolve a busca dessas informações em um calendário e a transcrição
das datas para um e-mail que é enviado à coordenação. Para minimizar esse
problema, o professor quer que vocês desenvolvam um script que, a partir da
informação dos dias da semana em que há aulas, produza todas as respectivas
datas do ano em que serão ministradas nossas aulas.
Exemplo:
aulas.sh 2011/02/07 2011/07/05 1,3
11/02/2011, 13/02/2011, 18/02/2011, 20/02/2011, 25/02/2011, 27/02/2011, 03/03/2011,
Esse é o problema, comecei a fazer algo mas empaquei. Será que alguém me dá uma dica?
Será que faz sentido e que tem como botar pra funcionar? Eu sou iniciante no linux, consegui desenvolver uma lógica mas não consigo executar.
Todos os semestres a coordenação do curso exige que o professor repasse a ela
os dias em que serão utilizados o laboratório. Essas datas baseiam-se nos dias
da semana em que são ministradas as aulas. Como nossa disciplina exige uso
intensivo do laboratório, o professor repassa à coordenação todas as datas
do semestre letivo em que são ministradas as aulas, para que possamos usar
o laboratório 100% do tempo disponível. Esse é um processo trabalhoso,
que envolve a busca dessas informações em um calendário e a transcrição
das datas para um e-mail que é enviado à coordenação. Para minimizar esse
problema, o professor quer que vocês desenvolvam um script que, a partir da
informação dos dias da semana em que há aulas, produza todas as respectivas
datas do ano em que serão ministradas nossas aulas.
Exemplo:
aulas.sh 2011/02/07 2011/07/05 1,3
11/02/2011, 13/02/2011, 18/02/2011, 20/02/2011, 25/02/2011, 27/02/2011, 03/03/2011,
Esse é o problema, comecei a fazer algo mas empaquei. Será que alguém me dá uma dica?
#!/bin/bash
echo "Digite a data da 1a aula no formato (2012-04-10): "
read data1
echo "Digite a data final no mesmo formato: "
read data2
# Agora vem o problema, não consigo passar os argumentos da data1 e data2 para executar a comparação no while
while [ $data1 < $data2 ]
do
day=`date --date=$data1 +%u` #aqui eu transformo a data1 em numeros dos dias que vao de 1 a 7
if (day =1 or day=3) # se day for = a 1 ou 3 imprime a data no formato 2012-04-10
echo " $data1 "
fi
data1=`date -d '1 day'` # Aqui é o contador da variavel data1 que vai incrementando de 1 em 1
done
Será que faz sentido e que tem como botar pra funcionar? Eu sou iniciante no linux, consegui desenvolver uma lógica mas não consigo executar.