- btz: Internet fejlesztés országosan!
- Klaus Duran: Youtube AI szinkron
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- gban: Ingyen kellene, de tegnapra
- droidic: Időutazás floppyval: A 486-os visszavág PCem-men
- LordAthis: Ismét egy "Idióta" A.I. Projekt, hogy meglovagolja az aktuális trendeket...
- eBay-es kütyük kis pénzért
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- votlage71: Kábel menedzsment
Hirdetés
Új hozzászólás Aktív témák
-
válasz
olivera88 #2109 üzenetére
"Úgyhogy az első sor törölhető akkor ugye?"
Nem, ott meg kell adni a tokent, mert anélkül a jelek szerint nem megy, azért kapsz html file-t. Akkor azt visszarakom.
"Ezt hogy érted hogy size változó értékét felül írom? Mivel?"
A következő file méretével, amikor ott van egymás után sokszor a "size=" kezdetű sor, akkor minden sorban új értéket adsz a size-nak és csak a legutolsód ellenőrzöd.
"Amúgy nem így akartam megoldani, hanem úgy hogy szétbontom az összes fájl ellenőrzést, és berakom a letöltések után, nem mint most hogy a végén ellenőrzi az egészet csak."
Ami scriptet írtam, az így van, minden egyes file-t a letöltése után vizsgál meg, nem pedig egyben a végén.
"Meg ez hogy van beállítva? Hogy egyszerre töltse le az összes fájlt? Mert úgy nem lehet, vagyis lehet, de én fokozatosan akarom, mivel nem egyszerre frissülnek a szerveren a fájlok, hanem fokozatosan."
Vagyis várni akarsz az egyes file-ok letöltése után? Ha erről van szó, akkor azt a külső ciklusban gond nélkül megteheted:
for TO in 12 24 36 48 60 72 ; do
download_file "${TO}"
donehelyett az kell, hogy (ha pl. 10 percet akarsz várni):
for TO in 12 24 36 48 60 72 ; do
download_file "${TO}"
sleep 10m
done -
válasz
olivera88 #2107 üzenetére
Aha, ez így nagyon nem jó
Az alapvető hiba az, hogy a size változó függvényét simán felülírod anélkül, hogy az előző értékét vizsgálnád, aztán ha jó, akkor újra azonnal letöltöd, ha meg nem, akkor vársz és újra megnézed (az azóta nyilván változatlan file méretet
)
Megcsináltam belőle egy normális változatot (a tokent írd bele vissza, azt töröltem az eddigi hozzászólásaidból is, mert az szerintem nem publikus információ):
szerk: észrevettem benne egy kis hibát, javítottam
#!/bin/bash
# access token
TOKEN="__5yLVTdr-sGeHoPitnFc7TZ6MhBcJxuSsoZp6y0leVHU__"
# file size min and max values - if the file's size falls outside of this range it is considered faulty
MIN_SIZE="38797312"
MAX_SIZE="45088768"
# time range - how many hour's data a single file contains
RANGE=12
function download_file()
{
# end time
TO="$1"
# start time - it is calculated a little oddly
FROM=$((${TO}-${RANGE}))
if [ $FROM -gt 0 ] ; then
FROM=$(($FROM+1))
fi
# add leading zeroes if needed
FROM="$(printf "%02d" "${FROM}")"
RANGE="$(printf "%02d" "${RANGE}")"
# url of the data
URL="http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=${TOKEN}&model=ARPEGE&grid=0.1&package=SP1&time=${FROM}H${TO}H&referencetime=$(date +'%Y-%m-%d')T${RANGE}:00:00Z"
# output file name
OUT_FILE="ARPEGE_SP1_${TO}H.grib2"
while true ; do
# get the file
wget "${URL}" -O "${OUT_FILE}"
# check the filesize
size=$(stat -c \%s "${OUT_FILE}" )
if [ $size -ge "${MIN_SIZE}" -a $size -le "${MAX_SIZE}" ] ; then
# size is OK, leave loop
break
else
# something went wrong, wait a little and retry
sleep 5m
fi
done
}
for TO in 12 24 36 48 60 72 ; do
download_file "${TO}"
done -
válasz
olivera88 #2105 üzenetére
A while-ok végén kimaradtak a done-ok, azt reklamálja.
A formázási lehetőség között van olyan, hogy "Programkód", kód beírásakor használd azt, mert az megőrzi a formázást meg a speciális karaktereket (szögletes zárójelek, meg zárójel elé tett kettőspontból sem lesz smiley).
-
olivera88
veterán
válasz
olivera88 #2104 üzenetére
Ez megoldva.
Egymás után beraktam ugyanezt többi fájlok nevével. És jó.
De lenne egy másik dolog.Ezt hogy kellene kijavítani h működjön?
#!/bin/sh
while true
dosize=$(stat -c \%s ARPEGE_SP1_12H.grib2)
size=$(stat -c \%s ARPEGE_SP1_24H.grib2)
if [ $size -lt 38797312 -o $size -gt 45088768 ]
then
# hiba, varj 5 percet
sleep 5m
# probald ujra
continue
fi
python /home/oliver/Magics_PCP_T_script/arpegepcpmslvhu_00_12.py
python /home/oliver/Magics_PCP_T_script/arpegepcpmslvhu_13_24.pySZERVER='x'
FELHASZNALO='x'
JELSZO='x'ftp -n -v $SZERVER << EOF
ascii
user $FELHASZNALO $JELSZO
prompt
cd ARPEGE
bin
send ARPEGEPCP06.png
send ARPEGEPCP12.png
send ARPEGEPCP18.png
send ARPEGEPCP24.pngEOF
while true
dosize=$(stat -c \%s ARPEGE_SP1_36H.grib2)
size=$(stat -c \%s ARPEGE_SP1_48H.grib2)
if [ $size -lt 38797312 -o $size -gt 45088768 ]
then
# hiba, varj 5 percet
sleep 5m
# probald ujra
continue
fipython /home/oliver/Magics_PCP_T_script/arpegepcpmslvhu_25_36.py
python /home/oliver/Magics_PCP_T_script/arpegepcpmslvhu_37_48.pySZERVER='x'
FELHASZNALO='x'
JELSZO='x'ftp -n -v $SZERVER << EOF
ascii
user $FELHASZNALO $JELSZO
prompt
cd ARPEGE
bin
send ARPEGEPCP30.png
send ARPEGEPCP36.png
send ARPEGEPCP42.png
send ARPEGEPCP48.pngEOF
while true
dosize=$(stat -c \%s ARPEGE_SP1_60H.grib2)
size=$(stat -c \%s ARPEGE_SP1_72H.grib2)
if [ $size -lt 38797312 -o $size -gt 45088768 ]
then
# hiba, varj 5 percet
sleep 5m
# probald ujra
continue
fipython /home/oliver/Magics_PCP_T_script/arpegepcpmslvhu_49_60.py
python /home/oliver/Magics_PCP_T_script/arpegepcpmslvhu_61_72.pySZERVER='x'
FELHASZNALO='x'
JELSZO='x'ftp -n -v $SZERVER << EOF
ascii
user $FELHASZNALO $JELSZO
prompt
cd ARPEGE
bin
send ARPEGEPCP54.png
send ARPEGEPCP60.png
send ARPEGEPCP66.png
send ARPEGEPCP72.png
exitEOF
Ezt a hibaüzenetet kapom így.
/Run_model3.sh: 120: ./Run_model3.sh: Syntax error: end of file unexpected (expecting "done")Ha kiszedem az EOF okat a feltöltés végéről akkor lefut a script de nem jó, mert invalid commandokat ir a többi python script futtatására.
-
Jester01
veterán
Új hozzászólás Aktív témák
- Humble megmaradt kulcsok Frissítve 08.05
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- DELL WD19 / WD19S dokkoló + 130W töltő
- iKing.Hu - Samsung Galaxy S25 Edge Használt, újszerű állapotban 12 GB RAM / 512 GB tárhely
- Wilbur Smith könyvek (15 db) egyben
- Bomba ár! Fujitsu LifeBook U727 - i3-7GEN I 16GB I 256SSD I 12,5" FHD I Cam I W11 I Garancia!
- Apple iPhone 16 Pro Max - Desert Titanium - Újszerű, Karcmentes,256GB
Állásajánlatok
Cég: FOTC
Város: Budapest