Строка совпадения AWK, не Regex

Приложение контроля:: SD на Вашем локальном CPAN.

SD является одноранговым узлом для пиринга с системой отслеживания ошибок, которую мы создали для совместного использования с примерно чем-либо. Участники помогли нам записать адаптеры для RT, Hiveminder, Trac, GitHub, Google Code и Redmine. Можно расширить SD для синхронизации к другим инструментам отслеживания ошибок путем записи маленького бита кода. Если можно помочь заставить SD работать лучше со средством отслеживания ошибки, написать нам.

обновите я просто понял, что список еще не включает Bugzilla... прошу прощения. но я собираюсь оставлять на виду ответ, если он делает в будущем, или кто-то хочет использовать, если для офлайнового кэширования другого bugtracker, или возможно Вы хотите добавить поддержку Bugzilla.

2
29.08.2012, 21:21
2 ответа

awk делает сравнение строк с == оператор и поиск строки с index(haystack, needle) функция.

read -r string # user types [(*.+
{ echo 'stuff [(*.+ stuff'; echo ')]*.+'; } | awk -v string="$string" 'index($0, string)'
# output: 'stuff [(*.+ stuff'
5
27.01.2020, 21:57
  • 1
    , которому мне нужен он для соответствия, где строка является подстрокой также, извините. –  Tyilo 29.08.2012, 21:22

В основном awk рассматривает символы в "" как строка и в//как regexp:

[root@me ~]# echo "[(*.+" | gawk '"[(*.+"'
[(*.+
[root@me~]# echo "[(*.+" | gawk '/[(*.+/'
gawk: /[(*.+/
gawk:  ^ unterminated regexp
gawk: fatal: Unmatched [ or [^: /[(*.+//
0
27.01.2020, 21:57
  • 1
    echo "[(*.+" | gawk '"wtf"' также отобразит тот же результат как Ваш пример, но все еще не решает проблему. –  manatwork 30.08.2012, 12:05

Теги

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