<html>
<head>
<meta content="text/html; charset=iso-8859-2"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p><br>
</p>
<br>
<div class="moz-cite-prefix">2016-12-21 19:01 keltezéssel, Nemeth
Akos írta:<br>
</div>
<blockquote
cite="mid:DB5PR05MB1333949350F094339F24138F84930@DB5PR05MB1333.eurprd05.prod.outlook.com"
type="cite">
<pre wrap=""> 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</pre>
</blockquote>
<br>
Ez volt a tiédben:<br>
u2d <a class="moz-txt-link-freetext" href="http://download.kde.org/stable/ktorrent/5.0/">http://download.kde.org/stable/ktorrent/5.0/</a><br>
<br>
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.<br>
<br>
Tehát ez már jót is ad vissza így:<br>
u2d <a class="moz-txt-link-freetext" href="http://download.kde.org/stable/ktorrent/5.0/">http://download.kde.org/stable/ktorrent/5.0/</a> ktorrent-<br>
<font size="-1">2.0.1<br>
</font><br>
De nekem még nem tetszik, mert mi van, ha nem csak 5.0 mappák
lesznek itt később, hanem majd szaporodnak?<br>
Ezért az 5.0 helyébe egy változó kívánkozik.<br>
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.<br>
<br>
<br>
Próbálkozással építem fel az u2d -t.<br>
<br>
1. próba<br>
<font size="-1">urllist <a class="moz-txt-link-freetext" href="http://download.kde.org/stable/ktorrent/">http://download.kde.org/stable/ktorrent/</a><br>
</font><br>
Kimenet:<br>
<font size="-1">stable<br>
5.0<br>
mirrorbrain.org<br>
httpd.apache.org</font><br>
<br>
Megszűröm a kimentete a <b>grep</b> -el. A grep paraméterének
szabványos kifejezést adok meg, <b>'^[0-9]'</b><br>
<br>
<br>
Ez a hieroglifa magyarra fordítva: azok a sorok maradjanak csak meg,
amik közvetlen a sor elején valamilyen számjegyet tartalmaznak.<br>
<br>
A hieroglifák magyarázata:<br>
<br>
<b>^</b> sorkezdetre illeszkedik a minta<br>
<b>[0-9] </b> egy darab bármilyen számjegy<br>
<br>
<br>
2. Az új u2d próba sor<br>
<font size="-1"><br>
urllist <a class="moz-txt-link-freetext" href="http://download.kde.org/stable/ktorrent/">http://download.kde.org/stable/ktorrent/</a> | grep '^[0-9]'<br>
<br>
</font>Kimenet:<br>
<font size="-1"><br>
5.0</font><br>
<br>
Reméljük, hogy itt a jövőben csak verziószámok lesznek és nem
például 99-unstable mappa....<br>
<br>
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 <b>sort
-V</b> paranccsal.<br>
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 <font
size="+1">tail -n 1</font> parancs csak a legutolsót hagyja csak
meg, ami mindig a legnagyobb lesz.<br>
<br>
Tehát:<br>
<font size="-1"><br>
urllist <a class="moz-txt-link-freetext" href="http://download.kde.org/stable/ktorrent/">http://download.kde.org/stable/ktorrent/</a> | grep '^[0-9]' |
sort -V | tail -n 1</font><br>
<br>
Ennek most persze ugyanez a kimenete, hisz csak egyetlen egy mappa
van itt.<br>
Ezt az egészet beteszem egy dir nevű változóba, és próbaképp a
második sorban ezt kiechóztatom<br>
<font size="-1"><br>
dir=$(urllist <a class="moz-txt-link-freetext" href="http://download.kde.org/stable/ktorrent/">http://download.kde.org/stable/ktorrent/</a> | grep
'^[0-9]' | sort -V | tail -n 1)<br>
</font><font size="-1">echo $dir<br>
</font><br>
Kimenet:<br>
<font size="-1"><br>
5.0</font><br>
<br>
És a végkifejlet, hogy ezt a $dir változót illesztem be az u2d
parancs első paraméterébe.<br>
<br>
<font size="-1">dir=$(urllist
<a class="moz-txt-link-freetext" href="http://download.kde.org/stable/ktorrent/">http://download.kde.org/stable/ktorrent/</a> | grep '^[0-9]' | sort -V
| tail -n 1)<br>
</font><font size="-1">u2d </font><font size="-1"><font size="-1"><a class="moz-txt-link-freetext" href="http://download.kde.org/stable/ktorrent/">http://download.kde.org/stable/ktorrent/</a></font>$dir/
libktorrent-<br>
</font><br>
Ennek kimenete:<br>
<b>2.0.1</b><br>
<br>
Remélem segített valamit.<br>
</body>
</html>