[UBK dev] kdeapps
Kiss Attila
attus at enterpriseforever.com
2016. Dec. 21., Sze, 22:02:41 CET
2016-12-21 19:01 keltezéssel, Nemeth Akos írta:
> download.kde oldalon pedig egy könyvtárban
> van a ktorrent-el, így annak a verziószámát veszi. (mivel az 5.0.1, a
> libktorrent meg 2.0.1
Ez volt a tiédben:
u2d http://download.kde.org/stable/ktorrent/5.0/
Ez jó lenne, de az u2d -nek van paramétere, az első az url, a második a
verziószám előtti rész, a harmadik a "tarprefix", azaz a verziószám és
az akármilyen tömörítési kiterjesztés közti rész. Itt a fenti címen
ktorrent-5.01.tar.xz és libktorrent-2.0.1.tar.xz fájlok vannak. Ezek
szerint második paraméternek a ktorrent- kell, hogy csak azt adja
vissza, mert anélkül az ott létező valamennyiből a legnagyobbat adja
vissza. Tarprefix nem kell, mivel a verziószámot rögtön .tar.xz követi.
Tehát ez már jót is ad vissza így:
u2d http://download.kde.org/stable/ktorrent/5.0/ ktorrent-
2.0.1
De nekem még nem tetszik, mert mi van, ha nem csak 5.0 mappák lesznek
itt később, hanem majd szaporodnak?
Ezért az 5.0 helyébe egy változó kívánkozik.
Ennek a változónak az értékét meg lehet adni a leendő u2d fájl első
sorában amir én a jó öreg urrlist eljárást találtam alkalmasnak.
Próbálkozással építem fel az u2d -t.
1. próba
urllist http://download.kde.org/stable/ktorrent/
Kimenet:
stable
5.0
mirrorbrain.org
httpd.apache.org
Megszűröm a kimentete a *grep* -el. A grep paraméterének szabványos
kifejezést adok meg, *'^[0-9]'*
Ez a hieroglifa magyarra fordítva: azok a sorok maradjanak csak meg,
amik közvetlen a sor elején valamilyen számjegyet tartalmaznak.
A hieroglifák magyarázata:
*^* sorkezdetre illeszkedik a minta
*[0-9] * egy darab bármilyen számjegy
2. Az új u2d próba sor
urllist http://download.kde.org/stable/ktorrent/ | grep '^[0-9]'
Kimenet:
5.0
Reméljük, hogy itt a jövőben csak verziószámok lesznek és nem például
99-unstable mappa....
Azért, hogy a jövőben a leendő újabb verziószámú könyvtárakből majd a
legnagyobb legyen az egyetlen kimenet, ezért sorbaszedem őket a *sort
-V* paranccsal.
A sort parancs -V paramétere a verziószám szerinti sorbarendezésre
utasítja a sort parancsot. Ebből a leendő felsorolásból a tail -n 1
parancs csak a legutolsót hagyja csak meg, ami mindig a legnagyobb lesz.
Tehát:
urllist http://download.kde.org/stable/ktorrent/ | grep '^[0-9]' | sort
-V | tail -n 1
Ennek most persze ugyanez a kimenete, hisz csak egyetlen egy mappa van itt.
Ezt az egészet beteszem egy dir nevű változóba, és próbaképp a második
sorban ezt kiechóztatom
dir=$(urllist http://download.kde.org/stable/ktorrent/ | grep '^[0-9]' |
sort -V | tail -n 1)
echo $dir
Kimenet:
5.0
És a végkifejlet, hogy ezt a $dir változót illesztem be az u2d parancs
első paraméterébe.
dir=$(urllist http://download.kde.org/stable/ktorrent/ | grep '^[0-9]' |
sort -V | tail -n 1)
u2d http://download.kde.org/stable/ktorrent/$dir/ libktorrent-
Ennek kimenete:
*2.0.1*
Remélem segített valamit.
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: <http://lists.ubk.hu/pipermail/dev/attachments/20161221/9a8b852b/attachment.html>
More information about the dev
mailing list