Kezdőoldal » Számítástechnika » Programok » Linuxhoz hosszú nevű fájlok...

Szgabor kérdése:

Linuxhoz hosszú nevű fájlok és mappák gyors kijelölését lehetővé tévő binárisfájl-összehasonlítót keresek, mit ajánlanátok?

Figyelt kérdés
Számos hosszú, kacifántos nevű mappában kéne hasonlóan kacifántos nevű bináris fájlokat összevetnem (egyezik/nem egyezik), szóval ide mindenképp GUI kell, pl. drag&drop felülettel vagy ügyes fájlablakkal. Fontos, hogy ha mappát adok meg, akkor az összes almappában az összes fájlt össze tudja vetni. Windows alatt WinMerge-t használtam erre a célra (de nem vagyok válogatós).

#linux #fájlösszehasonlító #fájlösszehasonlítás
2017. szept. 10. 01:02
 1/7 Tom Benko ***** válasza:
Hm. ami megy GUI-ban, az megy konzolon is. for ciklus az ls listájában léptetve, a magjában még egyszer ugyanez, és a két ciklusváltozó a diff paramétere.
2017. szept. 10. 16:47
Hasznos számodra ez a válasz?
 2/7 A kérdező kommentje:

Ezen a szinten azért még nem tartok, leírnád kicsit részletesebben?

(De amúgy ezzel is az a bibi, hogy vagy mindent letarol, vagy pedig pötyöghetem/másolhatom a kacifántos neveket, vagy legalábbis azok elejét. Tudom, a Windows az ördög műve, de azért a GUI-nak is megvan a maga helye, a WinMerge-ben pár kattintással kijelölöm, és már csinálja is...)

2017. szept. 11. 02:00
 3/7 A kérdező kommentje:
Meg ha jól értelmezem, akkor ez csak egylépcsős rekurziót biztosít, nekem meg az kell, hogy a megadott mappákon belül mindent egyes fájlt vessen össze, akkor is, ha onnan még 12 szinten vannak az almappák.
2017. szept. 11. 02:04
 4/7 Tom Benko ***** válasza:

Nem baj, majd fogsz. Alapvetően az ls egy listát ad vissza az adott könyvtárt fájljaiból. Érdemes a man ls parancsot kiadni, sokat megtudhatsz belőle. A for ciklus leírását pedig a man bash kézikönyvben találod meg.


Mondjuk most, ahogy nézegettem, van m ég egy érdekes megoldás: a teljes nevű listát a find "$(pwd)" is felsorolja. Ha ezt adod a ciklusnak, akkor legfeljebb a belső ciklusban kell ellenőrizni, hogy a fájlokat önmagukkal ne hasonlítsa össze.


Nagyjából így néz ki:


for variable in $(find"$(pwd)")

do

for variable2 in $(find"$(pwd)")

do

diff $variable $variable2

done

done


Érdemes ezt egy scriptbe tenni, és annak kimenetét fájlba irányítani, mert jó eséllyel több oldalas szöveget fog kihányni. Az indításkor abban a könyvtárban legyél, ahol az összehasonlítandó fájlok vannak.

2017. szept. 11. 09:17
Hasznos számodra ez a válasz?
 5/7 A kérdező kommentje:

Köszi a tippet, de úgy látom, ez sem nyert - az összevetendő fájlok rendszerint nem egy mappán belül vannak, sőt, nem is azonos meghajtón. Persze lehet másolgatni vagy kavarni a mountolással meg symlinkekkel, meg lehet fájlokba ereszteni az eredményt, és ott elemezni, a gond csak az, hogy mindez lassú, sok lépéses folyamat, megannyi hibalehetőséggel. Egymás után 30+ mappával eljátszani mindezt...

Windows alá ott a nyílt forráskódú WinMerge, tökéletesen működik, Linux alá meg semmi, amit életszerű módon lehetne használni?

Időközben rájöttem, hogy a WinMerge fut Wine alatt, de ez meg tök nevetséges, hogy a nagy profi alternatív oprendszer alatt egy ilyen komoly és alapvető feladatra windowsos program szükségeltetik...

2017. szept. 12. 18:37
 6/7 Tom Benko ***** válasza:
Mit kell itt másolgatni, mountolni, linkelni? De javaslom a find manját olvasásra.
2017. szept. 12. 21:22
Hasznos számodra ez a válasz?
 7/7 Tom Benko ***** válasza:

"Fontos, hogy ha mappát adok meg, akkor az összes almappában az összes fájlt össze tudja vetni."


Itt még szó sem volt meghajtókról, meg különböző mappákról. De a megoldás szinte az orrodat veri ki: legyen megadva a két összehasonlítandó mappa parancssori paraméterként, ezután már csak egy lista kell a könyvtárakról.

2017. szept. 12. 21:28
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!