2010-11-23 3 views
32

This question précise que -P permet GNU grep grep pour un ongletEst-il possible de git grep pour les onglets?

grep -P '\t' config/file.txt 

Cependant, l'utilisation git grep, je ne peux pas travailler comment grep pour un onglet:

git grep '\t' # Looks for files with the letter "t" instead 
git grep -P '\t' # Invalid option 
git grep -E '\t' # Does the same as without the -E 

Et il n » t semble être une option pour substituer dans votre propre programme grep. Est-ce ma seule option pour slurp tout le contenu et ensuite utiliser GNU grep sur les résultats?

+0

Je me demande si 'git grep '\\ t'' fonctionnerait. – MatrixFrog

+0

@MatrixFrog n ° –

Répondre

37

Vous pouvez contourner ce problème en tapant une tabulation littérale dans votre commande:

# type it with ^V then tab 
git grep ' ' 
+0

quel est le^V? – three

+0

@three control + v – Cascabel

+0

: D bien, oui. Quelle est la signification de Bash de ctrl-v? – three

32

Je ne peux pas trouver une notation regexp pour un onglet qui fonctionnera, mais il recherche heureusement pour une tabulation littérale si vous le pouvez passer un. In bash, ce serait

git grep $'\t' 
+2

Une telle syntaxe a également travaillé pour grepping retours chariot: 'git grep $ '\ r'. –

+0

Si vous voulez faire une recherche encore plus spécifique, comme utiliser une regex pour faire correspondre le début d'une ligne, alors vous pouvez aussi faire git grep '^' $ '\ t \ t' – Geuis

Questions connexes