[Risolto] Bash script cancellare righe ma come incolonnarle??????

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Avatar utente
sverdrup
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 607
Iscrizione: giovedì 15 giugno 2006, 12:51

[Risolto] Bash script cancellare righe ma come incolonnarle??????

Messaggio da sverdrup »

Ciao a tutti,
avrei bisogno di cancellare le prime n righe e le ultime m righe in un file di testo,
ho provato a cercare su google, ma non'ho trovato nulla,
qualcuno più ferrato di me  (mad) in bash scripting potrebbe aiutarmi??
Grazie 100000 a tutti
Ciauzzzzz
Ultima modifica di sverdrup il mercoledì 12 marzo 2008, 10:50, modificato 1 volta in totale.
"Not everything that counts can be counted, and not everything that can be counted counts."
Avatar utente
Re.in.stallo
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 646
Iscrizione: martedì 20 dicembre 2005, 23:50

Re: Bash script per cancellare righe in un file

Messaggio da Re.in.stallo »

sverdrup ha scritto: Ciao a tutti,
avrei bisogno di cancellare le prime n righe e le ultime m righe in un file di testo,
ho provato a cercare su google, ma non'ho trovato nulla,
qualcuno più ferrato di me  (mad) in bash scripting potrebbe aiutarmi??
Grazie 100000 a tutti
Ciauzzzzz
Eccoti uno scriptino veloce "senza capo ne coda"...

Per ottenere quello che cerchi, puoi combinare head e tail. Ad esempio, nel caso di n=4 ed m=5 e di un file chiamato "prova.txt"

Codice: Seleziona tutto

tail --lines=$((`wc -l <prova.txt`-4)) prova.txt | head --lines=-5
wc -l serve per ottenere il numero di righe del file prova.txt (il < serve per evitare che restituisca come output anche il nome del file). I meno davanti al valore di n e di m vanno tenuti.

Saluti, ;)
Gabriele
Ultima modifica di Re.in.stallo il domenica 9 marzo 2008, 23:07, modificato 1 volta in totale.
Sto diventando un allitterato, non riecso più a scrviere senza errori con la tatsiera...
Avatar utente
sverdrup
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 607
Iscrizione: giovedì 15 giugno 2006, 12:51

Re: Bash script per cancellare righe in un file

Messaggio da sverdrup »

grazie mille per il tuo aiuto,
ma ho risolto con

Codice: Seleziona tutto

for file in `ls *.opt`; do cat $file | sed 1,116620d  > $file.bak ; done
Però adesso ho un secondo problema.....
dovrei prendere da quattro file separati i valori ed organizzarli in colonne,
mi spiego meglio: creare un file composto da quattro colonne che derivano ognuna da un singolo file....
Idee e sugerimenti sono ben acetti  ;D
Grazie a tutti Ciauzzz
"Not everything that counts can be counted, and not everything that can be counted counts."
Avatar utente
crap0101
Rampante Reduce
Rampante Reduce
Messaggi: 8242
Iscrizione: martedì 30 ottobre 2007, 6:33
Desktop: LXDE
Distribuzione: Ubuntu 18.04.1 LTS
Sesso: Maschile
Località: TO
Contatti:

Re: Bash script cancellare righe [Risolto] ma come incolonnarle??????

Messaggio da crap0101 »

se ho capito bene:
paste -d" " file1 file2 file3 file4 > filerisultato
http://www.gnu.org/ http://boinc.berkeley.edu/ http://www.python-it.org/
- Ricorda le ultime parole di suo padre: «Sta' alla larga dalle chiese, figlio. La sola cosa per cui hanno la chiave è il merdaio. E giurami che non porterai mai un distintivo della legge» - W.S. Burroughs
Avatar utente
sverdrup
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 607
Iscrizione: giovedì 15 giugno 2006, 12:51

[Risolto] Bash script cancellare righe ma come incolonnarle??????

Messaggio da sverdrup »

Grazie mille funziona  (good)  ;D  (rotfl)
Una  (b2b) pagata a tutti!!
Ciauzzzz
e Grazie ancora
"Not everything that counts can be counted, and not everything that can be counted counts."
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 3 ospiti