/
githubmirror
/
bash-completion
Обзор
Документация
Войти
/
githubmirror
/
bash-completion
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
2.11
test/runLint
51 строка
2 KB
Ville Skyttä
test/runLint: warn about [ ] instead of [[ ]] use
22 май 2020, 09:24
22 май 2020, 09:24
f6f49db
Код
Авторство
О чём код?
#!/bin/bash -u gitgrep() { local out=$(git grep -I -P -n "$1" | grep -E '^(bash_completion|completions/|test/)' | grep -Ev "^test/runLint\>${filter_out:+|$filter_out}") if [ -n "$out" ]; then printf '***** %s\n' "$2" printf '%s\n\n' "$out" fi } unset CDPATH cd $(dirname "$0")/.. cmdstart='(^|[[:space:]]|\()' filter_out= gitgrep $cmdstart"awk\b.*-F([[:space:]]|[[:space:]]*[\"'][^\"']{2,})" \ 'awk with -F char or -F ERE, use -Fchar instead (Solaris)' gitgrep $cmdstart"awk\b.*\[:[a-z]*:\]" \ 'awk with POSIX character class not supported in mawk (Debian/Ubuntu)' gitgrep $cmdstart'sed\b.*\\[?+]' \ 'sed with ? or +, use POSIX BRE instead (\{m,n\})' gitgrep $cmdstart'sed\b.*\\\|' \ "sed with \|, use POSIX BRE (possibly multiple sed invocations) or another tool instead" # TODO: really nonportable? appears to work fine in Linux, FreeBSD, Solaris #gitgrep $cmdstart'sed\b.*;' \ # 'sed with ;, use multiple -e options instead (POSIX?) (false positives?)' gitgrep $cmdstart'sed\b.*[[:space:]]-[^[:space:]]*[rE]' \ 'sed with -r or -E, drop and use POSIX BRE instead' gitgrep $cmdstart'[ef]grep\b' \ '[ef]grep, use grep -[EF] instead (historical/deprecated)' # TODO: $ in sed subexpression used as an anchor (POSIX BRE optional, not in # Solaris/FreeBSD) gitgrep '(?<!command)'$cmdstart'(grep|ls|sed)(\s|$)' \ 'invoke grep, ls, and sed through "command", e.g. "command grep"' gitgrep '<<<' 'herestrings use temp files, use some other way' filter_out='^(test/|bash_completion\.sh)' gitgrep ' \[ ' \ 'use [[ ]] instead of [ ]'