variabele in shell scriptje

Pagina: 1
Acties:

  • cor-gijs
  • Registratie: Maart 2000
  • Laatst online: 05-04 20:53

cor-gijs

Dig further for bigger hole

Topicstarter
ik zit aangesloten op campusnet van twente, en daar zitten een paar mensen die keurig netjes de top40 bijhouden. ik wil dat de top40 iedere week naar mijn servertje gekopieerd wordt, dus wil ik een scriptje schrijven en in m'n crontab zetten.
de mensen die de top40 sharen gebruiken steeds een andere naam voor de directory waar de top40 in staat, dwz ze maken voor iedere jaargang een nieuwe directory aan met daarin voor iedere week een nieuwe map.
ik kan iedere week die top40 downloaden door:

smbmount //[sourceIP]/top40/jaargang[variabele1]/week[variabele2] /[mountpoint]/

en dan kopieren

ik wil dit natuurlijk automatisch hebben. hoe krijg ik nou in een shell scriptje voor elkaar dat hij voor variabele1 neemt:

2003-1964 (nu is het de 39e jaargang van de top 40)

en dat hij voor variabele 2 het weeknummer neemt?

let wel: ik ben nog maar net begonnen met scriptjes schrijven, en heb niet veel kaas gegeten van scripting op wat standaard java-kennis na van een een of ander verplicht vakje hier en daar.

mocht het nog wat uitmaken: ik gebruik Debian 3.0 woody

There is no adequate defense, except stupidity, against the impact of a new idea.


  • Kees
  • Registratie: Juni 1999
  • Laatst online: 01-05 14:55

Kees

Serveradmin / BOFH / DoC
man date

VAR1=`date +"%a"`
VAR2 = `date +"%b"`

let op, het zijn backticks

Zie ook http://www.tldp.org/LDP/abs/html/index.html voor heel veel meer informatie

[ Voor 36% gewijzigd door Kees op 02-09-2003 20:01 ]

"Een serveradmin, voluit een serveradministrator, is dan weer een slavenbeheerder oftewel een slavendrijver" - Rataplan


  • cor-gijs
  • Registratie: Maart 2000
  • Laatst online: 05-04 20:53

cor-gijs

Dig further for bigger hole

Topicstarter
als ik even snel een testscriptje schrijf met:

#! /bin/sh
a='date +"%U"'
echo $a


dan krijg ik

date +"%U"

terug. date +"%U" werkt zelf wel (ik krijg mooi 35 terug) maar niet in het scriptje. wat doe ik fout

There is no adequate defense, except stupidity, against the impact of a new idea.


Verwijderd

dat moet zijn %U en %Y. zie date(1)

  • blaataaps
  • Registratie: Juli 2001
  • Niet online
bit-slave schreef op 02 September 2003 @ 20:23:


terug. date +"%U" werkt zelf wel (ik krijg mooi 35 terug) maar niet in het scriptje. wat doe ik fout
Niet goed lezen wat kees zegt, je gebruikt ' ipv `, je moet ` gebruiken, backticks, zoals kees al vermeldde, en zoals vast ook in de door kees genoemde advanced bash scripting guide wordt uitgelegd.
Verwijderd schreef op 02 September 2003 @ 20:25:
dat moet zijn %U en %Y. zie date(1)
onzin, misschien zelf eerst de manpage van date (1) goed lezen voor je mensen verkeerde adviezen geeft?

[ Voor 25% gewijzigd door blaataaps op 02-09-2003 20:28 ]


  • cor-gijs
  • Registratie: Maart 2000
  • Laatst online: 05-04 20:53

cor-gijs

Dig further for bigger hole

Topicstarter
sorry, had weer even stront in m'n ogen, het werkt, bedankt
en volgens mij zijn %U en %Y wel de goede variabelen (volgens de manpage van date ook)

There is no adequate defense, except stupidity, against the impact of a new idea.


  • blaataaps
  • Registratie: Juli 2001
  • Niet online
Dat zijn ze ook, maar ik denk dat robian bedoelt dat je %U moet gebruiken ipv +"%U", wat onzin is.

Verwijderd

Verkeerd gedacht.
Pagina: 1