Вы можете использовать объект StackTrace из пространства имен System.Diagnostics, но информация будет доступна только в том случае, если там есть файлы PDB.
Файлы PDB генерируются по умолчанию для обеих версий Debug и Release. Единственное отличие заключается в том, что Debug настроен для генерации полной информации об отладке, где, когда сборка релиза настроена только для генерации pdb (только для full / pdb).
Console.WriteLine(new StackTrace(true).GetFrame(0).GetFileName());
Console.WriteLine(new StackTrace(true).GetFrame(0).GetFileLineNumber());
grep -r "texthere" .
Первый параметр представляет регулярное выражение для поиска, а второй - каталог, в котором должен осуществляться поиск. В данном случае .
означает текущий каталог.
Примечание: Это работает для GNU grep, и на некоторых платформах, таких как Solaris, вы должны специально использовать GNU grep в отличие от унаследованной реализации. Для Solaris это команда ggrep
.
Бросок моих двух центов здесь. Как другие уже упомянули , grep-r не работает над каждой платформой. Это может звучать глупым, но я всегда использую мерзавца.
git grep "texthere"
, Даже если каталог не подготавливается, я просто подготавливаю его и использую мерзавца grep.
Также:
find ./ -type f -print0 | xargs -0 grep "foo"
, но grep -r
- это лучший ответ.