egy 720MByte-os szöveg fájlt kéne megszerkesztenem, és kifogot az Open Officon. A gép Core2Duo 4G mem és nem lehet megnyitni sem. Mivel lehet egy ekkora fájlt szerkeszteni?
- 2711 megtekintés
Hozzászólások
Milyen szerkesztési műveletre gondolsz? Sima szövegfájl?
- A hozzászóláshoz be kell jelentkezni
Sima TXT. Csak Copy-Paste-elni kellene belőle.
- A hozzászóláshoz be kell jelentkezni
És ahhoz, hogy mit kell kopizni, látnod kell a fájl tartalmát, vagy esetleg tudsz róla a megnyitás nélkül is valamit (sorszám, valamilyen minta)? Ha az előbbi, akkor esetleg a split-tel felszabdalhatod kisebb, kezelhetőbb darabokra.
Egyébként mi ez, a Háború és béke 500-szor? :-)
- A hozzászóláshoz be kell jelentkezni
Milyen adat? Gondolom úgyse olyan, amit végig kell nézni, hanem keresni kell benne valamit. Akkor grep-pel állapítsd meg, hogy mettől meddig kell kivágni, aztán valami parancssoros eszközzel írasd azt a részt egy másik fájlba.
- A hozzászóláshoz be kell jelentkezni
"Milyen adat?"
Egy adatbázis exportálva cvs-be, és UTF8 kódolással. Aki kirakta fájlba, nem csinált egy selectet, hanem úgy egyben kinyomta az egészet sorbarendezve. Kéne belőle pár száz sor. 720MByte a fájl mérete
A vi -persze használható, de itt a Copy-Paste nem megy. Valami GUI-s editor kéne hozzá. Ha lenne a gépen Win, akkor notepad pont jó lenne, de most sajnos nincs.
- A hozzászóláshoz be kell jelentkezni
Akor gvim... =P
--
by lightgod
- A hozzászóláshoz be kell jelentkezni
vi-ban miért nem megy a copy-paste?
vi-ban lehet több fájlt szerkeszteni, és egyikből másikba szöveget másolni.
- A hozzászóláshoz be kell jelentkezni
Visual mode: v karakter
aztan kijelol
aztan y karakter
aztan beillesztesnel p vagy P karakter attol fugg hogy az aktualis pozicio ele vagy utan akarod illeszteni
--
by lightgod
- A hozzászóláshoz be kell jelentkezni
ha vim mellett döntesz akkor néhány tipp:
ha visualmódba nagy 'V'-vel mész akkor egész sorokat jelöl ki
ha pl. 50 sort lejebb akarsz mozogni: '50j' (felfelé 'k')
kereséssel is mozoghatsz: '/' és gépeld be a kifejezést (regexp), majd enterre az első találatra ugrik, 'n' következő, 'N' előző
ha pedig kiadod a :set incsearch parancsot akkor kereséskor ('/'), már gépelés közben az első találatra ugrik
- A hozzászóláshoz be kell jelentkezni
több fájl szerkesztése
:e fájlnév megnyit egy új fájlt
a megnyitott fájlok (bufferek) listáját :ls paranccsal lehet lekérni a listában van sorszámuk
:b3 paranccsal a 3. bufferra lehet ugrani
tehát egyik fájlból a másikba másolás:
:e fájl1
pl. a fentebb leírt módszerrel (visualmode + y) szöveg kijelölése és másolása
:e fájl2
'p'-vel beillesztés
- A hozzászóláshoz be kell jelentkezni
Rakd bele egy adatbázisba a dumpot, és akkor már tudsz benne selectet futtatni.
- A hozzászóláshoz be kell jelentkezni
Egy fájlból akár dd-vel is vághatsz, ha nagyjából tudod, hogy mettől meddig kell, de szkriptet is írhatsz rá. (Ha az adatbázisba töltés nem lenne jó.)
- A hozzászóláshoz be kell jelentkezni
sed
vi*
- A hozzászóláshoz be kell jelentkezni
`tail` es `head` kombinaciojaval ciklusban szepen haladhacc ^_^
FILE="testextt."
LINE_NUM=`cat "$FILE" | wc -l`
SLEEP=2
for i in `seq 0 $(($LINE_NUM / 20))`; do head -n $((20*$i)) "$FILE" | tail -n 20; sleep $SLEEP; done
de grep-el megtudod hanyadik sor aztan head-el es tail-el csak a megadott szakasz iratod ki...
FILE="test.text"
REGEXP="kifejezes"
cat -n $FILE | grep "$REGEXP"
es igy toabb... Vagy irsz ra egy programot, hogy szepen mutassa vegig a file-t soronkent... ^_^
esetleg...
`split`
FILE="test.text"
split -l 100 "$FILE"
es akor letrehoz egy rakat file-t mindegyikben csak 100 sor lesz ^_^ nagy file-nal erdemesebb kulon konyvtarban csinalni, mert sok kis file lesz...
Sok sikert... emelem eleg fegyvert adtam...
--
by lightgod
- A hozzászóláshoz be kell jelentkezni
Én a vim-mel megpróbálkoznék... (ha amúgy ismerted).
Vagy ha felismerhető valahogy az eleje és vége a kívánt résznek, sed-del kikapnám a nagy kupac közepéről.
Pl. ha egy fájlban (biblia.txt) megvan a teljes Biblia és a "{Máté|Márk} evangéliuma" szöveg csak mint fejezetcím fordul elő, akkor ez a parancs:
sed -n "/Máté evangéliuma/,/Márk evangéliuma/ p" biblia.txt > kimenet.txt
a két minta közti részt, azaz Máté evangéliumát (és Márk evangéliuma fejezetcímét, de ez könnyen levágható utólag) írja ki az egészből, amit betesz a kimenet.txt-be.
Remélem, ez segít.
- A hozzászóláshoz be kell jelentkezni
Nekem legalábbis segít, mert nem szoktam használni így a sed-et :) Még egy példa lesz a doksimban :P
- A hozzászóláshoz be kell jelentkezni
Miféle doksi az? Valami hasznos unixos tippgyűjtemény? Az érdekelne engem is. (Ha szabad terjesztésű...) :-)
- A hozzászóláshoz be kell jelentkezni
http://panther.inf.elte.hu/progkor/progkor.pdf - nem biztos, hogy pont neked kell :P
- A hozzászóláshoz be kell jelentkezni
Arany eletuk van manapsag ;) Szepen nez ki, grat.
==
`Have some wine,' the March Hare said in an encouraging tone.
Alice looked all round the table, but there was nothing on it but tea.
- A hozzászóláshoz be kell jelentkezni
Ah, pfuj, buktato targy, mindenki utalja. :-)
- A hozzászóláshoz be kell jelentkezni
Törölve.
- A hozzászóláshoz be kell jelentkezni
Ha egy másik fájlba kell részeket átmásolni akkor more-al vagy less-el (kinek mi a kedvence) lehet olvasni szépen a nagy fájlt, a megfelelő részeket pedig egérkével átrángatni az új fájlba...
- A hozzászóláshoz be kell jelentkezni
720 MB-os fájlt elég lassú lenne végigpörgetni.
- A hozzászóláshoz be kell jelentkezni
a more és a less is tud mintára keresni a szövegben... csakúgy mint a fentebb ajánlott szövegszerkesztők...
- A hozzászóláshoz be kell jelentkezni
1. Az awk erre való.
2. Ha meg kicsit bonyolultabb, akkor Pathologically Eclectic Rubbish Lister -> Perl (-n kapcsoló, .. és ... operátorok stb.).
3. Ha csak egszer kell megcsinálni, és a file egy szakaszára van szükséged, akkor split-tel szétvágni, és a megfelelő részeket editálni. Naná, hogy vi-val :))
- A hozzászóláshoz be kell jelentkezni