Beküldte balacy -
Fórum:
Egy nagyobb könyvtárban van kb. 13ezer alkönyvtár. Van közte olyan duplikált név is, amiben csak pár betű eltérés van.
Hogyan tudom kilistáztatni azokat a könyvtár neveket, amiben csak egy kicsi az eltérés?
Akár olyan megoldás is érdekes lehet, hogy a könyvtár neveket egy listába kimentem és valamely szövegszerkesztővel a minimálisan eltérő sorokat kikeresem...
Ha csak a könyvtárnevek kellenek
Beküldte lynx -
Értékelés:
find /a/könyvtár/útvonala -type d | awk -F'/' '{print $NF}' > konyvtarak.txt
Ha csak a könyvtárnevek kellenek
Beküldte lynx -
Értékelés:
find /a/könyvtár/útvonala -type d | awk -F'/' '{print $NF}' | sort > konyvtarak_sorted.txt
Ha kell, ezt tovább lehet finomítani úgy, hogy az első karakterek alapján külön lista készüljön a nevekről.
konyvtarak_A.txt
konyvtarak_B.txt
Bash megoldást nem tudnék, de
Beküldte kami911 -
Értékelés:
Bash megoldást nem tudnék, de fájllista jó ha van.
Ezek a megoldások játszhatnak:
Python minta:
>>> import jellyfish
>>> jellyfish.levenshtein_distance(u'jellyfish', u'smellyfish')
2
>>> jellyfish.jaro_distance(u'jellyfish', u'smellyfish')
0.89629629629629637
>>> jellyfish.damerau_levenshtein_distance(u'jellyfish', u'jellyfihs')
1
Fel kell dolgozni a fájlt és szerintem ez működhet. Azonos mappában vannak az alkönyvtár, vagy több szint is van?
Bash megoldást nem tudnék, de
Beküldte balacy -
Értékelés:
A másik meg ilyen, de ezt még nem próbáltam:
Az első ilyen eredményt ad:
laci@LinuxMInt:~/500$ python a.py
Hasonló könyvtárak (70% küszöb):
Zrínyi_Miklós_-_Szigeti_veszedelem_(2024)_-_Kulissza <-> Zrínyi_Miklós_-_Szigeti_veszedelem_(Bánffy_István) (Similarity: 0.73)
Zrínyi_Miklós_-_Szigeti_veszedelem_(2024)_-_Kulissza <-> Zrínyi_Miklós_-_Szigeti_veszedelem_(2024)_(Mészáros_Máté) (Similarity: 0.81)
Zsákai_Piroska_-_Kaptam_egy_életet_(2022)_-_Rádiószínház <-> Zsákai_Piroska_-_Kaptam_egy_világot_-_Rádiószínház (Similarity: 0.85)
Zrínyi_Miklós_-_Szigeti_veszedelem_(Bánffy_István) <-> Zrínyi_Miklós_-_Szigeti_veszedelem_(2024)_(Mészáros_Máté) (Similarity: 0.75)
Szuper lesz :)
Tapasztalat ebből: már a ChatGPT szépen használható az ilyen dolgokra. Párszor át kellet fogalmaznom a kérést, hogy nem egy adott mintára kerestessen, hanem az összes könyvtárnevet hasonlítsa össze az összessel, de szépen megoldotta a problémát.