0.021
thk thk Παρ. 4 Απρ. 2008 16:51 tags λίνουξ , προγραμματισμός 1 views
Το grep δεν πεθαίνει !
Το χρησιμοποιούμε ακόμα στο linux , και στο desktop , και αναγκαστικά όταν το μονο που έχουμε είναι command line interface.
Βέβαια μέχρι στιγμής εγώ έκανα  grep -R something *
και έψαχνε και στα απο κάτω directories.
Ti γίνεται όμως όταν θες να ψάξεις recursively (αναδρομικά) σε ορισμένα αρχεία?
Ε, εύκολο έλεγα και γώ, και έγραφα grep -R something *.py για να ψάξω κάτι στον κώδικα μου π.χ. .
Το έγραφα και εγώ καιρό να ομολογήσω, αλλά και πού το recursive!
Το μόνο πού έκανε  ήταν να ψάχνει στο τρεχον φάκελο.
Ετσι λοιπόν και γω άνοιξα το google και το ψαξα το θέμα.
Και κατέληξα για να μη τα πολυλογώ στο ακολουθο scriptaki :

#!/bin/bash
if [ $# -lt 3 ]
then
    echo "Usage is : `basename $0` <dir>  <filePattern> <term>"
    echo "Example  : `basename $0` . '*.py' tools.log"
    echo " enclose wildcard expressions in quotes"
    exit 0
fi

find $1 -name "$2" -print | xargs grep -n $3 /dev/null


Kαντε copy paste με ότι όνομα θέλετε (εγώ το έβγαλα grepy γιατί το θελα κυρίως για να ψάχνω σε python αρχεία) στο /usr/local/bin
και chmod +x .
Μετά ανεβείτε στη καρέκλα και φωνάξτε "Hip Hip Hooray!"