Re: Ένα πρόβλημα με wildcards και την εντολή ls
Dimitris Diamantis (aka ftso)
kotsifi at gmail.com
Thu Aug 6 17:57:45 BST 2009
Στις 6 Αύγουστος 2009 7:14 μμ, ο χρήστης Nikos Alexandris <
nikos.alexandris at uranus.uni-freiburg.de> έγραψε:
> Γεια χαρά στη λίστα.
>
> Προσπαθώ μάταια να βρω λύση στο παρακάτω (απλό;) πρόβλημα. Στην ουσία
> πρόκειται για 2 ερωτήματα.
>
> Από μια σειρά αρχείων με παρόμοια ονοματολογία [1] προσπαθώ να
> _απορρίψω_ από την εμφάνιση (ως μορφή λίστας/καταλόγου) εκείνα τα αρχεία
> για τα οποία το 3ο αλφαριθμητικό πεδίο (το ονομάζω έτσι για να είναι
> ευνόητο ποιο/τι εννοώ) είναι "203". _Δεν_ θέλω δηλαδή να συμπεριληφθούν
> συγκεκριμένα αρχεία [2] (...όσα περιέχουν το "203" σε συγκεκριμένη
> θέση).
>
> Έχω ψάξει πολύ για το συγκεκριμένο θέμα τόσο σε βιβλία όσο και στο
> διαδίκτυο. Τα "διάσημα" wildcards, που είναι τα *, ?, [] (καθώς και το !
> μέσα σε αγκύλες), δεν δίνουν τη λύση που ζητώ (πάντα με χρήση της
> εντολής ls χωρίς να καταφύγω σε sed ή awk ή επιπλέον grep).
>
>
> Ερώτημα 1ο:
>
> Υπάρχει (;) η δυνατότητα χρήσης των άγκιστρων {} με βάση όσα έχω
> διαβάσει αλλά ή δεν έχω κατανοήσει τη χρήση τους ή η έκδοση bash που έχω
> δεν "παίζει" σωστά.
>
> Π.χ. η εντολή "ls MOD09GQ_2008_{211}_sur_refl_b0?" παραπονιέται:
> --%<---
> ls: cannot access MOD09GQ_2008_{211}_sur_refl_b01: No such file or
> directory.
> --%<---
>
> Χρησιμοποιώ με επιτυχία το ίδιο search pattern μέσα από το grass-gis, με
> το δικό του module ( το g.mlist ), π.χ.:
> --%<---
> g.mlist pat=MOD09GQ_2008_{211}_sur_refl_b01
> MOD09GQ_2008_211_sur_refl_b01
> MOD09GQ_2008_211_sur_refl_b01
> --%<---
>
> Δεν θα έπρεπε να δίνει το ίδιο αποτέλεσμα η "απλή" εντολή ls;
>
>
> Ερώτημα 2ο:
>
> Ακόμη και αν δουλέψει η ls με το search pattern που περιέχει {}, αυτά
> "επιλέγουν" από τα δεδομένα που πρόκειται να εμφανιστούν εκείνα στα
> οποία περιέχεται η "λέξη" που δίνεται μέσα στα άγκιστρα.
>
> Γίνεται να αντιστραφεί η λειτουργία τους με κάποιο τρόπο; Αντί να
> επιλέγουν να απορρίπτουν;
>
>
> Υπάρχει πιο σύντομος τρόπος να απορρίψει κανείς μια σειρά από αρχεία που
> έχουν ένα κοινό "πεδίο" πάντα χρησιμοποιώντας την ls (χωρίς sed, awk,
> grep);
>
> Ελπίζα να είναι κατανοητό το πρόβλημα που αντιμετωπίζω.
> Ευχαριστώ, Νίκος
> ---
>
>
> [1]
>
> MOD09GA_2007_202_500m_sur_refl_b01
> MOD09GA_2007_202_500m_sur_refl_b02
> MOD09GA_2007_202_500m_sur_refl_b03
> [...]
> MOD09GA_2008_220_500m_sur_refl_b05
> MOD09GA_2008_220_500m_sur_refl_b06
> MOD09GA_2008_220_500m_sur_refl_b07
>
> [2] τα ανεπιθύμητα αρχεία είναι:
>
> MOD09GA_2007_203_500m_sur_refl_b01
> MOD09GA_2007_203_500m_sur_refl_b02
> MOD09GA_2007_203_500m_sur_refl_b03
> MOD09GA_2007_203_500m_sur_refl_b04
> MOD09GA_2007_203_500m_sur_refl_b05
> MOD09GA_2007_203_500m_sur_refl_b06
> MOD09GA_2007_203_500m_sur_refl_b07
>
> --
> Ubuntu-gr mailing list
> Ubuntu-gr at lists.ubuntu.com
>
> If you do not want to receive any more messages from the ubuntu-gr mailing
> list, please follow this link and choose unsubscribe:
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-gr
>
>
Κάτι τέτοιο μήπως?
ls MOD09GA_????_??[^3]_500m_sur_refl_b0?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.ubuntu.com/archives/ubuntu-gr/attachments/20090806/58b2cd1a/attachment.htm
More information about the Ubuntu-gr
mailing list