Σελ. 125 από 149 ΠρώτηΠρώτη ... 105115120123124125126127130135145 ... ΤελευταίαΤελευταία
Εμφάνιση 1.861-1.875 από 2222
  1. #1861
    Εγγραφή
    08-03-2007
    Μηνύματα
    23.459
    Downloads
    25
    Uploads
    0
    ISP
    ΟΤΕ Conn-x
    Καλημερα. Σε ενα αρχειο με πχ 30 γραμμες θελω να κρατησω την 1η και απο την 10 μεχρι την 20. Για το δευτερο κομματι, δηλαδη απο την 21 ως το τελος, καβω με το sed ετσι και δουλευει.
    Κώδικας:
    sed -i '21,$d' arxeio
    Για να κοψω το πρωτο κομματι, αυτο εδω ειναι σωστο?
    Κώδικας:
    sed -i '2,9' arxeio
    Θελω επισης και να διωξω ενα συγκεκριμενο κομματι κειμενου απο καθε γραμμη που το περιεχει, πχ να φυγει το
    "mitsos=blablabla" (με τα αυτακια).
    Τελευταία επεξεργασία από το μέλος jim_p : 13-01-23 στις 08:34.
    ديميتريس

  2. #1862
    Εγγραφή
    28-02-2006
    Μηνύματα
    1.161
    Downloads
    0
    Uploads
    0
    ISP
    Cosmote
    DSLAM
    ΟΤΕ - ΓΑΛΑΤΣΙ
    Παράθεση Αρχικό μήνυμα από jim_p Εμφάνιση μηνυμάτων
    Καλημερα. Σε ενα αρχειο με πχ 30 γραμμες θελω να κρατησω την 1η και απο την 10 μεχρι την 20. Για το δευτερο κομματι, δηλαδη απο την 21 ως το τελος, καβω με το sed ετσι και δουλευει.
    Κώδικας:
    sed -i '21,$d' arxeio
    Για να κοψω το πρωτο κομματι, αυτο εδω ειναι σωστο?
    Κώδικας:
    sed -i '2,9' arxeio
    Θελω επισης και να διωξω ενα συγκεκριμενο κομματι κειμενου απο καθε γραμμη που το περιεχει, πχ να φυγει το
    "mitsos=blablabla" (με τα αυτακια).
    Σου δίνω μια λύση σε perl one-liner:

    Κώδικας:
    perl -e 'while(($_ = <>) && ($i < 20)) { $i++; if ($i == 1 || $i >= 10) { s/"mitsos=blablabla"//g; print; } }' < in.txt > out.txt
    Όταν τρέχεις με είσοδο (in.txt) αυτό:

    Κώδικας:
    1-keep
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11"mitsos=blablabla"afterbla
    12
    13
    14"mitsos=blablabla""mitsos=blablabla"afterdoublebla
    15
    16
    17
    18
    19
    20
    21-ignore
    Παίρνεις έξοδο (out.txt) αυτό:

    Κώδικας:
    1-keep
    10
    11afterbla
    12
    13
    14afterdoublebla
    15
    16
    17
    18
    19
    20
    NetBSD Rocks!
    http://www.netbsd.org

  3. #1863
    Εγγραφή
    08-03-2007
    Μηνύματα
    23.459
    Downloads
    25
    Uploads
    0
    ISP
    ΟΤΕ Conn-x
    Ωραια ιδεα, απλα το le δεν εχει καθολου perl και χαρηκα τζαμπα! Το αλλο το εκανα ετσι
    Κώδικας:
    sed -i '21,$d' arxeio
    sed -i '2,9' arxeio
    και δεν εχει τιποτα απο αυτα που περιμενα να δω στο τελος. Μιλαμε για 100αδες γραμμες απο τις οποιες θα μεινουν 150-200 περιπου. Οταν ετρεξα τα sed ενα ενα στο αρχειο δουλεψαν κανονικα.

    Αυτο με την διαγραφη του mitsos=blablabla μπαινει σε δευτερη μοιρα τωρα.
    Τελευταία επεξεργασία από το μέλος jim_p : 13-01-23 στις 12:51.
    ديميتريس

  4. #1864
    Εγγραφή
    28-02-2006
    Μηνύματα
    1.161
    Downloads
    0
    Uploads
    0
    ISP
    Cosmote
    DSLAM
    ΟΤΕ - ΓΑΛΑΤΣΙ
    Τι είναι το le;

    Γενικά μπορείς να συναρμολογήσεις τα κομμάτια (1η γραμμή και 10η έως 20η), με συνδυασμό head και tail και στο τέλος, να βάλεις μια sed για να πετάξεις έξω το "mitsos=blablabla", απλά μου φάνηκε περισσότερος μπελάς (και πιο άσχημο :P):

    Κώδικας:
     a=`head -n 1 < in.txt`; b=`head -n 20 < in.txt | tail -n 11`; echo -e "$a\n$b" | sed 's/"mitsos=blablabla"//g' > out.txt
    NetBSD Rocks!
    http://www.netbsd.org

  5. #1865
    Εγγραφή
    08-03-2007
    Μηνύματα
    23.459
    Downloads
    25
    Uploads
    0
    ISP
    ΟΤΕ Conn-x
    Το libreelec, που εινια διανομη που εχει τα απολυτως απαραιτητα για να τρεξει ενα kodi και τερμα.
    Θα το δω μετα αυτο γιατι τωρα κοιταω ενα pc με windows.
    ديميتريس

  6. #1866
    Εγγραφή
    20-12-2005
    Μηνύματα
    3.221
    Downloads
    4
    Uploads
    0
    Τύπος
    VDSL2
    Ταχύτητα
    49997/4997
    ISP
    ΟΤΕ Conn-x
    DSLAM
    ΟΤΕ - ΞΑΝΘΗ
    Router
    Speedport W 724V
    SNR / Attn
    24,4(dB) / (dB)
    Αφού οι διάφορες εκτελέσεις του sed ξεχωριστά τρέχουν σωστά, γιατί δεν τις βάζετε μαζί αντί για την χρήση του head; Όχι ότι έτσι δεν παίζει φυσικά απλά είναι πιο άσχημο με το head.
    Κώδικας:
    % cat /tmp/in 
    1-keep
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11"mitsos=blablabla"afterbla
    12
    13
    14"mitsos=blablabla""mitsos=blablabla"afterdoublebla
    15
    16
    17
    18
    19
    20
    21-ignore
    
    % sed -i -e '21,$d' -e '2,9d' -e 's/"mitsos=blablabla"//g' /tmp/in
    
    % cat /tmp/in
    1-keep
    10
    11afterbla
    12
    13
    14afterdoublebla
    15
    16
    17
    18
    19
    20
    Αν μιλάμε για πάρα πολλά στάδια, τότε αντί για να έχουμε 15 -e, μπορούμε να το κάνουμε με την χρήση του script file ως εξής:
    Κώδικας:
    % cat /tmp/script            
    21,$d
    2,9d
    s/"mitsos=blablabla"//g
    
    % sed -f /tmp/script /tmp/in 
    1-keep
    10
    11afterbla
    12
    13
    14afterdoublebla
    15
    16
    17
    18
    19
    20
    Πετάμε δηλαδή τις διάφορες "εργασίες" που θέλουμε να τρέξει το sed σε ένα script και του το δίνουμε ως όρισμα.
    "I like offending people, because I think people who get offended should be offended" - Linus Torvalds

    "Παλιά είχαμε φτωχούς οι οποίοι ζούσανε σε φτωχογειτονιές. Τώρα, η οικονομικά δυσπραγούσα τάξη
    κατέχει στέγες υποδεέστερης ποιότητας σε υποβαθμισμένα αστικά κέντρα" - George Carlin
    Γα.... την πολιτική ορθότητα.

  7. #1867
    Εγγραφή
    28-02-2006
    Μηνύματα
    1.161
    Downloads
    0
    Uploads
    0
    ISP
    Cosmote
    DSLAM
    ΟΤΕ - ΓΑΛΑΤΣΙ
    Να σου πω την αμαρτία μου, εγώ έτσι κι αλλιώς δεν το πολυδουλεύω το sed (καθώς παίζω συνήθως με perl one-liners), αλλά καλό είναι που δόθηκε μια πιο καθαρή και κομψή λύση.
    Bravo!
    NetBSD Rocks!
    http://www.netbsd.org

  8. #1868
    Εγγραφή
    08-03-2007
    Μηνύματα
    23.459
    Downloads
    25
    Uploads
    0
    ISP
    ΟΤΕ Conn-x
    Ωραιο το one liner sed που τα κανει μαζεμενα! Θα το δοκιμασω οταν το ξαναχρειαστω. Παραπανω, δεν εκοβε τις γραμμες που ηθελα επειδη το αρχειο μεγαλωσε κατα 500+ γραμμες και επρεπε να αλλαζω τις τιμες του sed. Για αυτο που θελω να φυγει, ο τυπος εκανε ενα καλο και το εγραψε καλυτερα, οποτε για την ωρα θα το κρατησω οπως το εχει.
    ديميتريس

  9. #1869
    Εγγραφή
    08-03-2007
    Μηνύματα
    23.459
    Downloads
    25
    Uploads
    0
    ISP
    ΟΤΕ Conn-x
    Χαζες ιδεες που εχω...
    Θελω απο ενα git repo να δω ολα τα commits σε ενα συγκεκριμενο αρχειο. Ολα ομως, απο τη μερα που φτιαχτηκε. Βρηκα λοιπον ενα σκριπτακι, αυτο εδω*, που για καθε commit κανει και ενα φακελο με τα αρχεια του repo οπως ηταν σε αυτο το commit. Το σκεπτικο μετα ηταν να βρω το commit στο αρχειο που θελω ή, στη χειροτερη, το ιδιο το αρχειο πριν/μετα το commit.
    Ειπα οτι θα εχει 10, αντε 20 το πολυ commits. Τελικα εχει 247, οποτε τωρα εχω ενα φακελο με 247 υποφακελους που καθενας ειναι ενα "σημειο" στο ιστορικο του συγκεκριμενου repo. Το νεο σκεπτικο λοιπον ειναι να κανω grep... κατι σε καθε εναν μεχρι να βρω το παλιοτερο αρχειο το οποιο περιεχει αυτο που θελω, πχ να δω ποτε προστεθηκε η λεξη mitsos σε ενα αρχειο κειμενου για πρωτη φορα. Πως μπορω να κανω κατι τετοιο?

    * https://gist.github.com/magnetikonli...cd2aa38bd70432
    ديميتريس

  10. #1870
    Εγγραφή
    06-07-2005
    Περιοχή
    Νέα Υόρκη
    Ηλικία
    49
    Μηνύματα
    11.655
    Downloads
    6
    Uploads
    2
    Τύπος
    Cable
    Ταχύτητα
    300 Mbps down/10 Mbps up
    ISP
    Spectrum
    git blame πρέπει να χρησιμοποιήσεις και όχι αυτό που έκανες. Θα κοιτάξω αργότερα την ακριβή σύνταξη, δεν μπορώ τώρα, αλλά αν θες να συνεχίσεις τη μέθοδό σου κάνε grep -r mitsos και θα γίνει περίπου αυτό που θες.

  11. #1871
    Εγγραφή
    08-03-2007
    Μηνύματα
    23.459
    Downloads
    25
    Uploads
    0
    ISP
    ΟΤΕ Conn-x
    Θα μου πεις για το git blame ή να μην περιμενω? :P
    Το grep δεν βοηθησε ιδιαιτερα. Παρολο που βγαζει το φακελο, αρα μπορω να δω πως ηταν το repo στο αντιστοιχο commit, δεν τα βγαζει χρονολογικα αλλα αλφαβητικα. Το ιδανικο θα ηταν να ξερω πχ οτι το mitsos μπηκε σε αυτο το commit, βγηκε σε αυτο, ξαναμπηκε σε αυτο κλπ, μιας και μιλαμε για ενα αρχειο που θα το περιεχει παντα.
    ديميتريس

  12. #1872
    Εγγραφή
    06-07-2005
    Περιοχή
    Νέα Υόρκη
    Ηλικία
    49
    Μηνύματα
    11.655
    Downloads
    6
    Uploads
    2
    Τύπος
    Cable
    Ταχύτητα
    300 Mbps down/10 Mbps up
    ISP
    Spectrum
    Παράθεση Αρχικό μήνυμα από jim_p Εμφάνιση μηνυμάτων
    Θα μου πεις για το git blame ή να μην περιμενω? :P
    Το grep δεν βοηθησε ιδιαιτερα. Παρολο που βγαζει το φακελο, αρα μπορω να δω πως ηταν το repo στο αντιστοιχο commit, δεν τα βγαζει χρονολογικα αλλα αλφαβητικα. Το ιδανικο θα ηταν να ξερω πχ οτι το mitsos μπηκε σε αυτο το commit, βγηκε σε αυτο, ξαναμπηκε σε αυτο κλπ, μιας και μιλαμε για ενα αρχειο που θα το περιεχει παντα.
    Είναι δύσκολη εβδομάδα... Στείλε μου ένα πμ αν θες μέσα στο ΣΚ αν δεν σου έχω απαντήσει μέχρι τότε, sorry!

  13. #1873
    Εγγραφή
    08-03-2007
    Μηνύματα
    23.459
    Downloads
    25
    Uploads
    0
    ISP
    ΟΤΕ Conn-x
    No worries, μπορω να περιμενω.
    ديميتريس

  14. #1874
    Εγγραφή
    06-07-2005
    Περιοχή
    Νέα Υόρκη
    Ηλικία
    49
    Μηνύματα
    11.655
    Downloads
    6
    Uploads
    2
    Τύπος
    Cable
    Ταχύτητα
    300 Mbps down/10 Mbps up
    ISP
    Spectrum
    Δοκίμασε αυτό:

    Κώδικας:
    git log -G STRING --all FILENAME
    Ασφαλώς αλλάζεις το STRING με αυτό που ψάχνεις, και το FILENAME με το αρχείο που σε ενδιαφέρει.

  15. #1875
    Εγγραφή
    08-03-2007
    Μηνύματα
    23.459
    Downloads
    25
    Uploads
    0
    ISP
    ΟΤΕ Conn-x
    Σε ενα arm64 συστημα (coreelec σε s905 tvbox) θελω να τρεξω ενα binary... aarch64, αλλα δεν τρεχει. Αντιθετα, τρεχει η εκδοση του binary που ειναι για arm σκετο. Και το περιεργο ειναι πως στο rpι, που ειναι επισης arm64 debian stable, τρεχει το aarch64 binary και δεν τρεχει το arm!
    Πως γινεται αυτο?
    Κώδικας:
    jim@rpi3b:~/bin/dra-0.4.3-arm-unknown-linux-gnueabihf$ ./dra
    -bash: ./dra: No such file or directory
    jim@rpi3b:~/bin/dra-0.4.3-arm-unknown-linux-gnueabihf$ file dra
    dra: ELF 32-bit LSB pie executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 4.19.21, stripped
    ----------
    jim@rpi3b:~/bin/dra-0.4.3-aarch64-unknown-linux-gnu$ ./dra
    A command line tool to download release assets from GitHub
    
    Usage: dra <COMMAND>
    
    Commands:
      download    Select and download an asset
      untag       Select an asset and generate an untagged version of it
      completion  Generate shell completion
      help        Print this message or the help of the given subcommand(s)
    
    Options:
      -h, --help     Print help (see more with '--help')
      -V, --version  Print version
    jim@rpi3b:~/bin/dra-0.4.3-aarch64-unknown-linux-gnu$ file dra
    dra: ELF 64-bit LSB pie executable, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=664e33f6443c57d7e9bb1cf9b9d9015597c748ae, stripped
    ----------
    $ uname -a
    Linux rpi3b 5.10.0-21-arm64 #1 SMP Debian 5.10.162-1 (2023-01-21) aarch64 GNU/Linux
    ديميتريس

Σελ. 125 από 149 ΠρώτηΠρώτη ... 105115120123124125126127130135145 ... ΤελευταίαΤελευταία

Παρόμοια Θέματα

  1. Βοήθεια για ένα απλό bash script
    Από AddictedToChaos στο φόρουμ Unix - Linux
    Μηνύματα: 34
    Τελευταίο Μήνυμα: 22-07-11, 01:57
  2. bash - matlab
    Από simeon.mattes στο φόρουμ Unix - Linux
    Μηνύματα: 25
    Τελευταίο Μήνυμα: 25-06-08, 23:00
  3. Bash Script help (Αρχάριος)
    Από weakwire στο φόρουμ Unix - Linux
    Μηνύματα: 12
    Τελευταίο Μήνυμα: 08-05-07, 00:41
  4. bash rename (mv)
    Από hayzel στο φόρουμ Unix - Linux
    Μηνύματα: 6
    Τελευταίο Μήνυμα: 07-01-07, 16:33

Tags για αυτό το Θέμα

Bookmarks

Bookmarks

Δικαιώματα - Επιλογές

  • Δεν μπορείτε να δημοσιεύσετε νέα θέματα
  • Δεν μπορείτε να δημοσιεύσετε νέα μηνύματα
  • Δεν μπορείτε να αναρτήσετε συνημμένα
  • Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας
  •  
  • Τα BB code είναι σε λειτουργία
  • Τα Smilies είναι σε λειτουργία
  • Το [IMG] είναι σε λειτουργία
  • Το [VIDEO] είναι σε λειτουργία
  • Το HTML είναι εκτός λειτουργίας