Вопрос: Как установить grep по умолчанию для определенного шаблона имени файла?


Я работаю на python, поэтому 95% или более времени, когда мой поиск grep

grep "thing to find" *.py

или что-то подобное. Я работаю в Windows 7, но будучи unix-парнем, я ленив от своих нажатий клавиш, поэтому я хотел бы установить grep для автоматического поиска *.py если я не укажу что-то другое.

Есть ли что-нибудь, что я могу добавить к GREP_OPTIONS сделать это? Или что-то подобное?


2
2018-02-10 14:41


Источник


@slyx, который должен быть ответом, но с "$@" вместо $1, - jordanm
@jordanm Спасибо, я заметил разницу! Я только что опубликовал это как ответ! - Slyx
Ах, оставил немного деталей. Большую часть времени я работаю над полем Win7. Таким образом, никаких функций нет. Я могу поместить его в пакетный файл {grep% 1 * .py}, который лучше, чем ничего. Я просто надеялся на большее количество вариантов канонического / конфигурационного файла или среды. - Skip Huffman
@SkipHuffman, в среде Windows envirenement (MSDOS) вы также можете определить макрос DOSKEY: DOSKEY pygrep=grep $* *.py и назовите его так же, как вы видите в ответах. К сожалению, число параметров DOSKEY и BATCH ограничено 9 в среде Windows, поэтому не забудьте использовать pygrep "Your search between double quote limiters" - Slyx


Ответы:


Вы можете определить функцию pygrep, которая будет искать внутри вашего py только файлы:

pygrep() { 
    grep "$@" *.py
}

5
2018-02-10 14:49



@jordanm Спасибо за исправление, совместимое с POSIX! - Slyx


Создать функцию

mygrep(){ grep "$@" *.py}

Запустить его

mygrep main

Добавьте функцию в файл автозагрузки.


1
2018-02-10 14:54



В чем смысл псевдонима? Почему бы просто не вызвать функцию mygrep и сделать с этим? - terdon
Мои имена функций, как правило, длинные, но мои псевдонимы короткие. Я сказал, что это необязательно. - X Tian
Да, да, я просто задавался вопросом, зачем вам вообще нужен псевдоним, он просто добавляет слой сложности, не делая ничего полезного. Я что-то упускаю? - terdon
Вероятно, потому, что я начал определять псевдонимы, а затем выполнял функции, добавляя этот уровень сложности, Так что это немного привычка. - X Tian
Ах, да, я знаю все о старых привычках :). Итак, функции псевдослучайных псевдонимов? Не имел представления. - terdon


Я закончил создание мини-пакетного файла:

grep -n "%*" *.py

сохраняет несколько нажатий клавиш и соответствует моему нормальному циклу мозга. «Где эта фраза в моем коде на Python?»

Спасибо всем за вклад!


0
2018-02-14 16:03