Linux script help

...εφαρμογές για οτιδήποτε άλλο

Συντονιστής: konnn

Linux script help

Δημοσίευσηαπό tritsako » 27 Μαρ 2009, 23:52

Γεια σε όλους,

Χρειάζομαι λίγο τη βοήθεια των Linuxάδων.
Θα ήθελα να με βοηθήσει κάποιος να φτιάξω ένα script το οποίο να κάνει το παρακάτω :

Να διαβάζει μία μία γραμμή από ένα αρχειο (txt) "arxeio".
Οταν σε καποια γραμμή βρει το “Description” να την βάζει σε ένα αλλο αρχειο (arxeio1.txt).
Οταν σε κάποια επόμενη γραμμή βρει το “name” να το βάζει δίπλα στην απο πάνω γραμμή στο ίδιο νεο αρχείο (arxeio1.txt).
.
Οταν σε καποια επόμενη βρει το “Description” να την βάζει στο παραπάνω νέο αρχειο στην επόμενη γραμμη (arxeio1.txt)
Οταν σε κάποια επόμενη γραμμή βρει το “name” να το βάζει δίπλα στην απο πάνω γραμμή στο ίδιο νεο αρχείο (arxeio1.txt).
.
.
.
Μέχρι το τέλος του αρχείου.
Φαντάζομαι να μην σας μπέρδεψα..

Ευχαριστώ πολύ.
Κώστας
tritsako
babeTUX
babeTUX
 
Δημοσιεύσεις: 3
Εγγραφή: 20 Φεβ 2009, 20:31
Εκτύπωση

Re: Linux script help

Δημοσίευσηαπό linuxman » 28 Μαρ 2009, 00:52

Δες εδώ viewtopic.php?f=9&t=859 έχει αρκετά άλλα και εδώ έχει viewforum.php?f=35
Οδηγίες προς Νεοεισερχόμενους
1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Ικανοποιητικό ┃ Αγγλικών: Ικανοποιητικό
2 Linux Mint 17.1 Rebecca 3.13.0-37-generic 64bit (el_GR.UTF-8, X-Cinnamon cinnamon)
3 Intel Core i5-2310M CPU @ 2.10GHz ‖ RAM 3866 MiB ‖ Dell Inc. 0D7C51 - Dell Inc. Dell System Vostro 3750
4 Intel 2nd Generation Core Processor Family Integrated Graphics [8086:0116] {i915}
5 wlan0: Intel Centrino Wireless-N 1030 [Rainbow Peak] [8086:008a] (rev 34) ⋮ eth0: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 06)
http://www.greeklug.gr
Άβαταρ μέλους
linuxman
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 10378
Εγγραφή: 10 Μάιος 2008, 20:41
Τοποθεσία: Thessaloniki / Macedonia / Greece
Εκτύπωση

Re: Linux script help

Δημοσίευσηαπό tritsako » 28 Μαρ 2009, 10:01

Thank you.
tritsako
babeTUX
babeTUX
 
Δημοσιεύσεις: 3
Εγγραφή: 20 Φεβ 2009, 20:31
Εκτύπωση

Re: Linux script help

Δημοσίευσηαπό chazisop » 28 Μαρ 2009, 17:51

Το κατάφερες ή να βάλουμε το χεράκι μας (δε παίζει να είναι πανω από 4 γραμμές)
Επίπεδο Γνώσεων: Linux: Μέτριο / Προγραμματισμός: Ναι / Αγγλικά:Καλά
Ubuntu 8.10 Intrepid Ibex
Intel Core2 6400 @ 2.13GHz , 3GB RAM , Nvidia 7600 GT , 2 x 120GB Western Digital hdd , 1x1TB Seagate hdd
chazisop
punkTUX
punkTUX
 
Δημοσιεύσεις: 160
Εγγραφή: 20 Νοέμ 2008, 04:19
Εκτύπωση

Re: Linux script help

Δημοσίευσηαπό tritsako » 04 Απρ 2009, 14:54

chazisop έγραψε:Το κατάφερες ή να βάλουμε το χεράκι μας (δε παίζει να είναι πανω από 4 γραμμές)


Έχω πολλά χρόνια να φτιάξω scripts (Πάνω από 15) και δυσκολεύομαι.
Σωστά chazisop δεν πρέπει να είανι πανω από 4-5 γραμμές.
Ευχαριστώ, μάλλον θα χρειαστώ την βοήθειάς σου.
tritsako
babeTUX
babeTUX
 
Δημοσιεύσεις: 3
Εγγραφή: 20 Φεβ 2009, 20:31
Εκτύπωση

Re: Linux script help

Δημοσίευσηαπό ftso » 06 Απρ 2009, 01:39

tritsako έγραψε:Να διαβάζει μία μία γραμμή από ένα αρχειο (txt) "arxeio".

Η εντολή cat διαβάζει ένα αρχείο.

tritsako έγραψε:Οταν σε καποια γραμμή βρει το “Description” να την βάζει σε ένα αλλο αρχειο (arxeio1.txt).

Η εντολή grep εμφανίζει όσες γραμμές έχουν μέσα την λέξη που θα δώσεις ως ρύθμιση.

Επίσης το "εντολή" >> "αρχείο" βάζει το αποτέλεσμα της εντολής στο "αρχείο".

Τώρα αν μας δώσεις ένα παράδειγμα με το αρχικό αρχείο και ένα με το νεο τότε θα μπορέσω να βοηθήσω περισσότερο...
Άβαταρ μέλους
ftso
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 6409
Εγγραφή: 12 Μάιος 2008, 13:40
Τοποθεσία: Αθήνα
IRC: ftso
Εκτύπωση

Re: Linux script help

Δημοσίευσηαπό Dimitris » 06 Απρ 2009, 11:41

Απλά σε μια γραμμή με awk:
Κώδικας: Επιλογή όλων
awk '/Description/;/name/' oldfile > newfile

Βέβαια τα αποθηκεύει όλα το ένα κάτω από το άλλο.

Exception:
Αν βρει πρώτα το name και μετά το Descrption τι να κάνει;
Άβαταρ μέλους
Dimitris
saintTUX
saintTUX
 
Δημοσιεύσεις: 1357
Εγγραφή: 13 Μάιος 2008, 13:57
Τοποθεσία: Θεσσαλονίκη
Εκτύπωση


  • ΣΧΕΤΙΚΑ ΘΕΜΑΤΑ
    ΑΠΑΝΤΗΣΕΙΣ
    ΠΡΟΒΟΛΕΣ
    ΣΥΓΓΡΑΦΕΑΣ

Επιστροφή στο Εφαρμογές Άλλες-Διάφορες