Szkriptek: Python, Perl, Bash, ...

[megoldva]Mintára illeszkedő nevű fájlok másolása könyvtárnévvel kiegészítve

 ( pepo | 2019. április 8., hétfő - 17:36 )

Sziasztok!

Van egy könyvtáram, amiben sok-sok egyedi könyvtárnév van, amikben lévő fájlok közül azokat szeretném átmásolni, ami illeszkedik egy mintára. Mivel a fájlnevek lehetnek ugyanolyanok, ezért az átmásolt fájl fájlneve és a kiterjesztése közé szeretném beékelni a könyvtár nevét.
Néhány perc alatt leprogramozható, nem jelent gondot. Itt arra lennék kíváncsi, hogy shell parancsokkal egy sorban meg lehet-e csinálni. (Elegánsabb lenne, mintha programban változókkal manipulálnék.)

Fájlok megtalálása, másolása nem gond:

find ./ -type f -name "*minta*" | xargs cp -t /idemasold/

Ezt kiegészítve/módosítva van ötletetek, hogy a közvetlen könyvtárnevet is átörökítse?

Pl.:

./010101
- ezegymintafajl.txt
- XmintaX.jpg
- ygiziy.hhh
./010102
- masikmintafajl.png
- eznemkell.ttt

--> 
/idemasold
- ezegymintafajl_010101.txt
- XmintaX_010101.jpg
- masikmintafajl_010102.png

OCR hibák javítása hogyan?

 ( begyu | 2019. március 31., vasárnap - 12:47 )

A szkriptek témakört azzal a hátsó szándékkal választottam, hátha van valakinek okos megoldása. :)

A szkennelt szövegek hibáinak korrigálása érdekelne, hogy lehet-e erre megoldást találni vagy egyáltalán érdemes-e foglalkozni vele?
Például: rn-ből m, t-ből i, r-ből t stb. Ezek tipikusak és nem feltétlenül értelmetlen szöveget eredményeznek, hanem néha totál megtévesztően, létező szavakat.
Fogalmam sincs, hogy lehetne automatizálni ezeknek a szövegeknek a javítását. Ha valakinek van ötlete, ne tartsa vissza magát!

iránytű fokok konvertálása

 ( Nextra | 2019. március 27., szerda - 16:37 )

Az adatok számok formájában érkeznek. pl. 330. Ez az iránytű szerint ÉÉNY-nak felel meg. Ezeket a számokat szeretném szöveges formába átalakítani. Hogyan álljak neki ha a bashban keresem a megoldást?

python feldolgozo (parser) irasa

 ( tr1719 | 2019. március 25., hétfő - 20:32 )

Udv!

Egy olyan kodot szeretnek irni, ami kepes az alapjelek feldolgozasara:


()
and
or
not
boolean (true / false)

. Egyelore otleteket varok, hogy ki hogyan allna hozza? Mi a legcelszerubb? A nyelv strukturaja igazabol valaszthato, en hatarozhatom meg, es a bekeres formaja is. Akar az is lehetseges, hogy mindig kirakom, hogy milyen jelek lehetnek a kovetkezo tokenek, es abbol valaszt a felhasznalo (ez mondjuk talan nem a legegyszerubb / felhasznalobaratabb, viszont nagyobb esellyel eredmenyez ertelmezheto szintaxist) .

conky - belső képkeret

 ( Nextra | 2019. március 23., szombat - 14:33 )

Betettem egy képet a conkyba, amely végül is egy keret.
A szöveget ezen a képkereten belül kéne igazgatnom.
Viszont a megadott képkeretbe nem fér bele 20 karakternél több, ezért sortörést kéne alkalmazni ha pl. két szó hosszabb mint a megadott.

A tr ' ' '\n' nem jó, mert a megtört rész már nem esik bele a keretbe.
Sajnos a belső képkereten belül sem lehet középre igazítani semmit.
létezik erre valami?

Megoldás párhuzamos futás ellen

 ( kumgabor | 2019. március 21., csütörtök - 17:06 )

Sziasztok!

Egy kis logikai segítséget kérnék:

Adott egy adatbázis tábla, amiben a sorokat egy PHP scripttel dolgozom fel, majd a sor egyik mezőjét feldolgozottra állítom. A feldolgozó script bármikor futhat, az is előfordulhat, hogy egyszerre 5 példányban indul el, így meg kell tudom oldani, hogy egy-egy sort párhuzamosan ne dolgozzak fel kétszer.
Eddig erre a megoldás az volt, hogy a script futásának elején lockfájlt hozok létre, majd a végén törlöm, de sajnos ha pontosan ugyanakkor indult el két folyamat, akkor ez nem segített.

Ti mit csinálnátok?

Equation to SVG/EPS konverzio

 ( riverman | 2019. március 12., kedd - 18:58 )

Sziasztok,

Egy olyan problemaval kuzdok, hogy ASCII Math (https://en.wikipedia.org/wiki/AsciiMath) es/vagy MathML forrasbol kellene generalnom SVG-t (worst case EPS-t).
A Python, SVG, AsciiMath, MathML szavak minden permutaciojaval probaltam keresgelni a google-ben, de nem talaltam megbizhato megoldasokat. A legtobb esetben javascript konyvtarakat talaltam, amiket subprocess hivassal (stdin pipe a node-ra) ugyan meg tudok hivni, de ez minden csak nem elegans raadasul dependenciakat allit a target host fele (telepiteni kell a node-ot es az adott JS konyvtarat).

[megoldva] szövegfájl kigyomlálása

 ( osod88 | 2019. március 8., péntek - 19:13 )

Egyszerű szövegfájl szerkesztéséhez kéne egy kis segítség bash-ben.
A minta szöveg:
575a785c00000005003cf675
d46c775c0000000500ab41c5
....

ilyen 24 random számos-betűs ID stringekből van pár ezer sor, enterrel elválasztva.

A probléma: a program ami generálja, bele-beleszór az ID stringeken kívül tetszőleges helyeken más információkat is.
Ezeket valahogy ki kéne gyomlálni a fáljból.

Arra gondoltam, hogy mindent kidobnék a fájlból ami nem 24 karakter hosszú.
Biztos marha egyszerű, de sajnos nem sokszor írok shellscriptet, elakadtam.

dátum összehasonlítás

 ( Nextra | 2019. február 9., szombat - 16:47 )

Egy bash szkriptben megadok egy "hónap, nap, óra, perc" egyedi dátumot.
A szkriptben mindegyik adatnak van egy változója $month, $day stb.
Össze kellene vetnem csak az aktuális hónap, nappal.
actualmonth=$(date +%m)
actualday=$(date +%d)

Hogyan tudnám összehasonlítani egyszerűen?
Ha a "hónap,nap" egyezik, akkor végre kell hajtani egy utasítást. Ha nem, akkor nem.
Én csak egyesével tudom összehasonlítani az "if-then-else" segítségével. Van esetleg egyszerűbb megoldás is?

Python3.6 + spyder

 ( meditor | 2019. február 7., csütörtök - 16:11 )

Sziasztok!

Python környezetet alakítok ki. Kinéztem egy jó kódírót hozzá: spyder. A 2.? változat szépen működött, egyedüli probléma az volt, hogy nem lehetett sötét hátteret állítani. Nálam ez esszenciális.

Kutakodtam és kiderült, hogy ez csak a 3-as verziótól ficsör. Ez viszont QT5-öt igényel és innentől rémálom az egész. Nem részletezem. Eljutottam odáig, hogy PyQt5 lefordult, make install megvolt. Indítom a spydert és

File "/usr/lib/python2.7/site-packages/qtpy/__init__.py",
line 205, in

python + oop opensource projectek tanulásra

 ( kilvadi | 2019. január 31., csütörtök - 15:40 )

Sziasztok!

Szeretnek fejlodni a topikcimbeli dolgokban.
Arra gondoltam, hogy ehhez jo lenne komplett rendszerek forrasait tanulmanyozni.
Ebben kernem segitsegeteket, javasoljatok olyan forraskoddal rendelkezo es elerheto projecteket amibol tanulni lehet.

filekezeles,adatbaziskezeles,regexp,webscarping,hibakezeles ezek amik a legjobban erdekelnek, de barmibol lehet tanulni, ugyhogy minden _is_ johet.

kosz!

pontos útvonal meghatározás

 ( Nextra | 2019. január 25., péntek - 14:16 )

Hogy oldhatnám meg a következő dolgot?

Meg kellene határoznom hogy egy adott fájlnak mi a pontos útvonala.
Ezt megtudom tenni például így:

find "$(cd ..; pwd)" -name "filename"

Meg is van, de több találat van, mert backupok, más verziók, stb.
Hogy tudnám meghatározni pont a megfelelőt?

A nehézséget számomra a felhasználó neve jelenti, mert az nem ismert.

Tehát:
/home/ISMERETLEN/adott_almmappa/adott_fájl

Minden egyéb azonosság szükségtelen, mert azok a backupok, más verziók stb.

PDF fájlok szétválogatása a bennük található tartalom alapján

 ( Adamyno | 2019. január 25., péntek - 9:20 )

Sziasztok!

Adott egy feladat. Van vagy 3000 db pdf fájl egy mappában. Szét kellene válogatni őket különböző mappákba a fájlokban található azonosító szám alapján. A pdf második sorában van egy szám, az egyezőket kellene egy mappába tenni.

Már ott elakadt a történet, hogy a fájlokból mivel lehet kiolvasni szöveges adatot. Szerencsére nem szkennelt dokumentum.

Valakinek van erre ötlete?
Windowst használunk, de jöhet linuxos javaslat is.

Perl Tk title karakterkódolás

 ( render_elek | 2019. január 14., hétfő - 10:41 )

Sziasztok,

hogyan lehet az ablak címébe hazai karaktereket írni?
mert így biztos nem:

#!/usr/bin/perl -w
use Tk;
$mw=MainWindow->new();
$mw->title=>"UTF-8";
$mw->title("áéíóöőúüű");
MainLoop();

És így se:

#!/usr/bin/perl -w
use Tk;
use Encode qw(decode encode);
$mw=MainWindow->new();
encode('UTF-8', $mw->title("áéíóöőúüű");
MainLoop();

Válaszokat előre köszönöm!

column és a sed

 ( Nextra | 2019. január 9., szerda - 19:13 )

Van egy listám, melyet egy szkripttel olvastatok be. Van benne egy column parancs is. A kedvenc disztrómban tökéletesen lefut a szkript.
De most próbaképpen megnéztem a Manjaroban is.
Az 5 rendezett oszlop helyett csak két oszlopot jelenít meg, s emiatt szétesik az egész kinézet.

Kinyomoztam hogy a szkriptben a column-t követő sed -e 's/_/ /g' miatt esik össze az oszlopos megjelenítés. Hogy lehetséges ez?
Talán a konsole és a gnome terminál miatt van? A kedvenc disztrómban KDE-t használok, és ott konsole a terminál program. Ott minden jó.

perl és az oop

 ( render_elek | 2019. január 2., szerda - 17:36 )

Sziasztok,

elértem a Perl oop részéhez, ahol gyorsan el is akadtam :)
Van egy egyszerű példakód , amihez magyarázatot kérek.
Nem az a gond, hogy nem tudom mit csinál, hanem a "hogyan" és a "miért" nem tiszta.
A new konstruktor egy tömböt kap. Aztán visszaad egy hivatkozást az adatszerkezetre.
Az area nevű példánymetódus mit kap?
Tömböt? merthogy a shift valaminek levágja az 1. elemét, ami alapján lista vagy tömb lehet.
Amit meg levág, azt visszaadja a $self-nek, ami meg kivonatként viselkedik tovább "->" miatt.

Fájlban szereplő sorok kiíratása egy másik fájban szereplő minták alapján

 ( Leno | 2018. december 26., szerda - 11:10 )

Sziasztok! Segítséget kérnék az alábbi feladat megoldásában.

Van egy párszáz soros "A" és "B" csv fájlom az alábbi tartalommal:

"A" fájl

sorszám; név1; név2;
012;nagyon nagy kutya;munka;
019;nagyon kicsi macska;házi
023;nagy pisztoly;sport
stb.

"B" fájl:

sorszám;
017
023
042
stb.

Az "A" fájlban szereplő sorok közül ki kellene egy "C" fájba iratnom azokat a sorokat, amelyekre a "B" fájlban egyezés található. Vagyis ha található az "A"-ban olyan sorszám amely a "B"-ben szerepel akkor azt a sort írja ki.

Hash validation python script

 ( freeroute | 2018. december 19., szerda - 13:53 )

Sziasztok,

bcyrpt_pass.txt file tartalma (részlet) soronként:

$2a$10$I6E3U7RkdGM.SANtLA0CN.0/vRXQXgQcmILujAsECIEWmIHg2E6OS:test
$2a$10$JWN47nR8hfeu2h7nYIy2SuJ3rHQnPfLBSXhaicHzrTBEeysvOFDTO:123456
$2a$10$KVmdzwJ93Ub8loWynNyMPOY5MW2u4eZvRDlWaZ8Ca.WW2FOilKkJy:marshall
$2a$10$LueHEZkzc7tkgGHFPfTUt.nM4VYEHZDX6UrRLZ9XleywY5c0.XpGC:123456
$2a$10$Lwfv6gQE7YGZ6kNKlv5hJeonkbNSYuBStFn/ZRUf2vCwNsNmjTvx6:bingo1

wordpress_pass.txt file tartalma (részlet):

$P$BOjK6nuYBraDNtWkbzaM0wz.EOs/xz.:qwerty123456
$P$Bz3HEGUq7g7ITnJa0oM9kBi8iF07Ps/:qwerty1

Python3 MySQL kapcsolat állapota (folyamatos)

 ( makgab | 2018. december 9., vasárnap - 14:41 )

Üdv!
Van egy python3 progi, ami helyi adatokat küld fel openvpn (wifi) kapcsolaton keresztül egy MySQL szerverhez.
Mivel a wifi nem egészen stabil, ezért előfordul, hogy megszakad a kapcsolat. Ilyenkor a script kivétel miatt elszáll és kilép.
A kivételt most kezelem, de csak az a kérdés, hogyan érdemes? A script ilyesmi:

#!/usr/bin/python3

import MySQLdb as sql
import time

print("Starting...")

while True:
try:
# helyi adatok gyűjtése itt...
#
# conncetion:

AWS Polly CLI script miért lassul be?

 ( yoursoft | 2018. december 7., péntek - 23:41 )

Szeretnék egy kis segítséget kérni.

Sok sok soron keresztül futtatok egy nagy shell scriptet (~400 ezer soros).

Egy sor így néz ki:
mkdir -p a && aws polly synthesize-speech --output-format mp3 --voice-id Matthew --text 'slow down' a/b.mp3 &> /dev/null

Az elején nagyon gyorsan csinálja (másodpercenként többet is), majd felmegy a CPU használat magasba és már 8-10 secbe is telik egy sor lefuttatása.
Háttérbe indítom el. Azaz "./a.sh &"

Python schedule - pontos időközönként

 ( makgab | 2018. december 7., péntek - 7:58 )

Üdv!
A korábbi témában már megoldódott a python script indítása: https://hup.hu/node/161767
Egy dolog merült fel, hogy a schedule-ben (schedule modul) beállított időzítő érték úgy működik, hogy az "ismétlődési idő" a korábban befejezett ismétlődéstől számolódik.
Pl.:
* job-ot futtatok 15 percenként egész órától kezdve, akkor így fut:
12:00:00
12:15:00
12:30:00

Python objektum és globális változó

 ( redman | 2018. december 2., vasárnap - 12:37 )

Sziasztok,

GPS trackereket szeretnék saját szerveren kezelni. A traccar javas cucc sajnos eléggé ágyuval verébre, meg szeretnék tanulni is.
Szóval találtam egy Python kódot ami kezeli az egyik eszközömet: https://github.com/durian/tk102-server
Egy másik eszközhöz is szeretném használni (más adatformátum), ezért nekiálltam átalakítani.
Az eredeti program, könyvtárak és fájlok létrehozásával oldotta meg az adatok tárolását, de mivel nekem MQTT üzenet kell csak az aktuálisan küldött üzenetről ezért elég lenne mindent a memóriában kezelni.

Powershell weblekérdezés Cookie-val tarkítva

 ( jacem | 2018. november 26., hétfő - 17:49 )

Sziasztok,

Próbálkozok Powershell-ben laikusként egy weboldal lekérdezésével, amiben sajnos elakadtam a Cookie miatt. Már elég sokat keresgéltem a neten és egyszerűen nem jövök rá a számomra megfelelő megoldásra.
Esetleg tudnátok ebben nekem segíteni?

A kódom itt található: https://pastebin.com/gdhtHdaD

Jelenleg csak annyit szeretnék elérni, hogy mikor kiíratom a
$Request.ParsedHtml.body.outerText értéket, akkor végre ne a cookie tartalmát lássam, hanem az általa "eltakart" tartalmat, a mérkőzéseket.

expressjs+reactjs

 ( raavi | 2018. november 21., szerda - 23:28 )

Sziasztok,
Most ismerkedem express+react párossal.
Amit nem értek, hogy Reactjs hogyan kezeli a multi-page alkalmazásokat?
Tudom, hogy van egy react-router-dom amivel lehet nav-bart léterhozni, de ez ilyenkor teljesen újratölti az oldalt és egy új reactapp-ot kell létrehoznom minden page-nek?
Szeretném ha header-t, nav-bar-t, footer-t nem kellene újratölteni minden egyes oldal váltásnál, illetve ha jól értem a ract sem ezzel a szemlélettel készült.

Hogyan tudok egy DOM-ba új react componeneseket, tölteni egy page váltáskor a react-router-dom-ot használva?

Python scheduler egész óra

 ( makgab | 2018. november 17., szombat - 21:06 )

Üdv!
Azt szeretném python3-ban megoldani, hogy ha elindul a script, akkor várjon a legközelebbi egész óráig (00 percig).
Ezt mivel lehet megoldani elegánsan?
Próbálkoztam a time csomaggal:

import time

starttime=time.time()
print(starttime)
# time.sleep(3600.0 - ((time.time() - starttime) % 3600.0)) <--- ide kellene a megfelelő sleep