2013-07-09 6 views

Antwort

2

Sie haben nicht erwähnt, welches Betriebssystem Sie verwenden, aber wenn es Linux-ähnlich ist, können Sie ein "Wrapper" -Skript schreiben. Erstellen Sie ein Shell-Skript mit dem Namen git-grep1 und legen Sie es in ein Verzeichnis, das sich in Ihrem $ PATH befindet, damit git es finden kann. Dann können Sie git grep1 param1 param2... eingeben, als ob Ihr Skript ein integrierter Git-Befehl wäre.

Hier ist ein kleines Beispiel für den Einstieg:

# Example use: find C source files that contain "pattern" or "pat*rn" 
# $ git grep1 '*.c' pattern 'pat*rn' 

# Ensure we have at least 2 params: a file name and a pattern. 
[ -n "$2" ] || { echo "usage: $0 FILE_SPEC PATTERN..." >&2; exit 1; } 

file_spec="$1" # First argument is the file spec. 
shift 
pattern="-e $1" # Next argument is the first pattern. 
shift 

# Append all remaining patterns, separating them with '--and'. 
while [ -n "$1" ]; do 
    pattern="$pattern --and -e $1" 
    shift 
done 

# Find the patterns in the files. 
git grep -i "$pattern" -- "$file_spec" 

Sie wahrscheinlich damit experimentieren müssen, zum Beispiel, vielleicht durch den $file_spec umschließt und jedes Muster in Apostrophe Expansion durch die verhindern Schale.

0

Wenn Sie die relative Reihenfolge der Saiten kennen, dann können Sie tun, ein

git grep str1.*str2.*str3 -- *strings*txt 
Verwandte Themen