Считайте все случаи строки в большом количестве файлов с grep

Я поддерживаю хранимые процедуры ( MySQL имеет поддержку хранимых процедур с 5.0 ) с точки зрения безопасности - преимущества -

  1. Большинство баз данных (включая MySQL ) позволяют ограничить доступ пользователей к выполнению хранимых процедур. Четкое управление доступом к безопасности полезно для предотвращения эскалации атак привилегий. Это предотвращает возможность взлома приложений, которые могут быть запущены SQL, непосредственно из базы данных.
  2. Они абстрагируют исходный SQL-запрос из приложения, поэтому для приложения доступно меньше информации о структуре базы данных. Это затрудняет понимание людьми базовой структуры базы данных и разработку подходящих атак.
  3. Они принимают только параметры, поэтому существуют преимущества параметризованных запросов. Конечно, IMO вам все равно нужно дезинфицировать ваш вход, особенно если вы используете динамический SQL внутри хранимой процедуры.

Недостатки -

  1. Они (хранимые процедуры) трудно поддерживать и стремиться к размножению очень быстро. Это делает их проблемой.
  2. Они не очень подходят для динамических запросов - если они созданы для принятия динамического кода в качестве параметров, тогда многие преимущества сбрасываются.

286
задан Peter Mortensen 17 June 2017 в 22:25
поделиться

4 ответа

cat * | grep -c string
286
ответ дан Bombe 23 November 2019 в 01:48
поделиться

Вместо того, чтобы использовать-c, просто передайте его по каналу в туалет-l.

grep string * | wc -l

Это будет перечислять каждое возникновение на одной строке и затем считать количество строк.

Это пропустит экземпляры, где строка происходит 2 + времена на одной строке, все же.

22
ответ дан Michael Haren 23 November 2019 в 01:48
поделиться
cat * | grep -c string

Одно из редких полезных приложений cat.

16
ответ дан Joachim Sauer 23 November 2019 в 01:48
поделиться

Это работает для нескольких экземпляров в строке:

grep -o string * | wc -l
291
ответ дан 23 November 2019 в 01:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: