แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

แƒ›แƒ˜แƒœแƒ“แƒ แƒ’แƒ˜แƒ—แƒฎแƒ แƒแƒ— แƒ”แƒ แƒ—แƒ˜ แƒกแƒแƒซแƒ˜แƒ”แƒ‘แƒ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒœแƒแƒ“ แƒแƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ”แƒ‘แƒก แƒชแƒฎแƒแƒ•แƒ แƒ”แƒ‘แƒแƒก. แƒ แƒแƒชแƒ แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ–แƒ” แƒ›แƒ˜แƒ•แƒ“แƒ˜แƒ•แƒแƒ  แƒ“แƒ แƒ แƒแƒฆแƒแƒชแƒ˜แƒก แƒซแƒ”แƒ‘แƒœแƒ แƒ›แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ, แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜ แƒ แƒแƒช แƒ•แƒแƒ™แƒ”แƒ—แƒ”แƒ‘ แƒแƒ แƒ˜แƒก แƒแƒ แƒ˜แƒก แƒ—แƒฃ แƒแƒ แƒ แƒ“แƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ ack-แƒ˜แƒก แƒจแƒ”แƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒ. แƒ”แƒก แƒฃแƒขแƒ˜แƒšแƒ˜แƒขแƒ แƒแƒ แƒ˜แƒก แƒจแƒ”แƒกแƒแƒœแƒ˜แƒจแƒœแƒแƒ•แƒ˜ แƒฉแƒแƒœแƒแƒชแƒ•แƒšแƒ”แƒ‘แƒ grep-แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ˜แƒกแƒ”แƒ•แƒ” แƒ แƒแƒ’แƒแƒ แƒช find-แƒ˜แƒกแƒ แƒ“แƒ wc-แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒšแƒฌแƒ˜แƒšแƒแƒ“. แƒ แƒแƒขแƒแƒ› แƒแƒ แƒ grep? Ack-แƒก แƒแƒฅแƒ•แƒก แƒฃแƒคแƒ แƒ แƒšแƒแƒ›แƒแƒ–แƒ˜ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜, แƒฃแƒคแƒ แƒ แƒ›แƒ”แƒขแƒ˜ แƒแƒ“แƒแƒ›แƒ˜แƒแƒœแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒฌแƒแƒกแƒแƒ™แƒ˜แƒ—แƒฎแƒ˜ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜, perl regex แƒ“แƒ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ. แƒ—แƒฃ แƒ›แƒแƒ’แƒฌแƒแƒœแƒ— (แƒฃแƒœแƒ“แƒ) แƒ›แƒแƒซแƒ”แƒ‘แƒœแƒแƒ— แƒขแƒ”แƒ แƒ›แƒ˜แƒœแƒแƒšแƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—, แƒ›แƒแƒจแƒ˜แƒœ แƒแƒฃแƒชแƒ˜แƒšแƒ”แƒ‘แƒšแƒแƒ“ แƒฃแƒœแƒ“แƒ แƒกแƒชแƒแƒ“แƒแƒ—.

แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒ›แƒแƒฎแƒแƒกแƒ˜แƒแƒ—แƒ”แƒ‘แƒšแƒ”แƒ‘แƒ˜

Ack แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒแƒ“ แƒ แƒ”แƒ™แƒฃแƒ แƒกแƒ˜แƒฃแƒšแƒ˜แƒ แƒ“แƒ แƒœแƒแƒ™แƒšแƒ”แƒ‘แƒ˜ แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒฌแƒ”แƒ แƒ แƒงแƒแƒ•แƒ”แƒšแƒ—แƒ•แƒ˜แƒก แƒ™แƒแƒ แƒ’แƒ˜ แƒ˜แƒ“แƒ”แƒแƒ.

แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— แƒ“แƒ แƒแƒจแƒ -wแƒ•แƒฃแƒ—แƒฎแƒ แƒแƒ— แƒฃแƒขแƒ˜แƒšแƒ˜แƒขแƒแƒก, แƒ›แƒแƒซแƒ”แƒ‘แƒœแƒแƒก แƒฉแƒ•แƒ”แƒœแƒ˜ แƒœแƒ˜แƒ›แƒฃแƒจแƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒ แƒจแƒ”แƒ›แƒแƒ แƒขแƒงแƒ›แƒฃแƒšแƒ˜แƒ แƒกแƒ˜แƒขแƒงแƒ•แƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒ–แƒฆแƒ•แƒ แƒ”แƒ‘แƒ˜แƒ— (แƒกแƒ˜แƒ•แƒ แƒชแƒ”, แƒ–แƒแƒšแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ.แƒจ.).

ack -w mysql

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

Ack แƒ›แƒฎแƒแƒ แƒก แƒฃแƒญแƒ”แƒ แƒก แƒซแƒ”แƒ‘แƒœแƒแƒก แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒขแƒ˜แƒžแƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ—. แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒ›แƒแƒ“แƒ˜ แƒ•แƒ˜แƒžแƒแƒ•แƒแƒ— แƒ›แƒแƒ“แƒฃแƒšแƒ˜แƒก แƒ•แƒ”แƒ แƒกแƒ˜แƒ json แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒจแƒ˜.

ack --json '"version":s+"d+.d+.d+"'

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ˜แƒšแƒ˜ แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒขแƒ˜แƒžแƒ”แƒ‘แƒ˜แƒก แƒกแƒ แƒฃแƒšแƒ˜ แƒกแƒ˜แƒ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒœแƒแƒฎแƒแƒ— แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—:

ack --help-types

แƒฎแƒจแƒ˜แƒ แƒแƒ“ แƒกแƒแƒญแƒ˜แƒ แƒแƒ แƒ“แƒแƒ—แƒ•แƒแƒšแƒแƒ— แƒ แƒแƒ›แƒ“แƒ”แƒœแƒฏแƒ”แƒ  แƒ’แƒแƒ›แƒแƒฉแƒœแƒ“แƒ”แƒ‘แƒ แƒคแƒ แƒแƒ–แƒ แƒŸแƒฃแƒ แƒœแƒแƒšแƒ˜แƒก แƒคแƒแƒ˜แƒšแƒจแƒ˜, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒกแƒแƒ’แƒ”แƒ‘แƒแƒ“, แƒ—แƒฃ แƒ แƒแƒ›แƒ“แƒ”แƒœ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒก แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜.

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ
แƒฉแƒ•แƒ”แƒœ แƒ•แƒ˜แƒ—แƒ•แƒšแƒ˜แƒ— แƒ แƒแƒ›แƒ“แƒ”แƒœแƒฏแƒ”แƒ  แƒฎแƒ“แƒ”แƒ‘แƒ แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜ test.log แƒคแƒแƒ˜แƒšแƒจแƒ˜, แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ” (-i).

แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ“แƒแƒ•แƒ—แƒ•แƒแƒšแƒแƒ— แƒ›แƒแƒ•แƒšแƒ”แƒœแƒ”แƒ‘แƒ˜ แƒแƒ แƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ”แƒ แƒ— แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒš แƒคแƒแƒ˜แƒšแƒจแƒ˜, แƒแƒ แƒแƒ›แƒ”แƒ“ แƒฏแƒ’แƒฃแƒคแƒจแƒ˜. แƒ›แƒแƒ“แƒ˜แƒ— แƒ“แƒแƒ•แƒแƒกแƒ แƒฃแƒšแƒแƒ— แƒฌแƒ˜แƒœแƒ แƒซแƒ˜แƒ”แƒ‘แƒ แƒกแƒ˜แƒขแƒงแƒ•แƒ mysql: แƒ“แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ”แƒ— แƒกแƒ˜แƒขแƒงแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒฉแƒ”แƒœแƒ˜แƒก แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ (-แƒ แƒแƒ›แƒ˜แƒ“แƒแƒœ) *.js แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒจแƒ˜(--js), แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒ™แƒšแƒ”แƒ‘แƒ˜แƒ—, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒจแƒ˜แƒช แƒแƒ แƒแƒคแƒ”แƒ แƒ˜แƒ แƒœแƒแƒžแƒแƒ•แƒœแƒ˜ (-h) แƒ“แƒ แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜แƒก แƒจแƒ”แƒฏแƒแƒ›แƒ”แƒ‘แƒ.

# ะฒั‹ะฒะตะดะตะผ ะฝะฐ ัะบั€ะฐะฝ ะฒัะต ะฒั…ะพะถะดะตะฝะธั
ack --js -w mysql
# ัั‡ะธั‚ะฐะตะผ ะพะฑั‰ัƒัŽ ััƒะผะผัƒ ะฒั…ะพะถะดะตะฝะธะน
ack --js -wch mysql

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

แƒ’แƒแƒ แƒ“แƒ แƒแƒ›แƒ˜แƒกแƒ, แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ›แƒ˜แƒ•แƒ˜แƒฆแƒแƒ— แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒแƒœแƒ’แƒแƒ แƒ˜แƒจแƒ˜ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒคแƒแƒ˜แƒšแƒจแƒ˜ แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ (-l)

ack --js -w -cl mysql

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

แƒ—แƒฃ แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ—แƒ˜ แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒซแƒ˜แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒแƒ— แƒ“แƒแƒ“แƒแƒกแƒขแƒฃแƒ แƒ”แƒ‘แƒ
แƒฎแƒแƒ–แƒ”แƒ‘แƒ˜แƒก แƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ แƒ›แƒ“แƒ” (-B) แƒ“แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ (-A) แƒœแƒแƒžแƒแƒ•แƒœแƒ˜ แƒ’แƒแƒ›แƒแƒฎแƒแƒขแƒ•แƒ˜แƒก. แƒแƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ›แƒ˜แƒฃแƒ—แƒ˜แƒ—แƒแƒ— แƒแƒคแƒชแƒ˜แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒฎแƒแƒ–แƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒฃแƒœแƒ“แƒ แƒ˜แƒงแƒแƒก แƒœแƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜.

# 2 ัั‚ั€ะพะบะธ ะดะพ 
ack --js --column -B 2 "query.once('" ./lib/

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

# 2 ัั‚ั€ะพะบะธ ะฟะพัะปะต 
ack --js --column -A 2 "query.once('" . /lib/

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

แƒ“แƒ แƒ—แƒฃ แƒแƒ แƒ˜แƒ•แƒ” แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ—, แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ— (-C)

ack --js --column -C 2 "query.once('" ./lib/

แƒแƒกแƒ”แƒ•แƒ” แƒแƒ แƒ˜แƒก แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜ (-v) แƒซแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ˜แƒœแƒ•แƒ”แƒ แƒกแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒแƒœแƒฃ แƒฎแƒแƒ–แƒ”แƒ‘แƒ˜แƒก แƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒแƒ  แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒš แƒจแƒแƒ‘แƒšแƒแƒœแƒก.

แƒ แƒ”แƒ’แƒฃแƒšแƒแƒ แƒฃแƒšแƒ˜ แƒ’แƒแƒ›แƒแƒฎแƒแƒขแƒฃแƒšแƒ”แƒ‘แƒ

Ack, grep-แƒ˜แƒกแƒ’แƒแƒœ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒ˜แƒ—, แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก Perl แƒ—แƒแƒ•แƒกแƒ”แƒ‘แƒแƒ“ แƒ’แƒแƒ›แƒแƒœแƒแƒ—แƒฅแƒ•แƒแƒ›แƒ”แƒ‘แƒก.
แƒฉแƒ”แƒ›แƒ—แƒ•แƒ˜แƒก แƒ”แƒก แƒ“แƒ˜แƒ“แƒ˜ แƒžแƒšแƒฃแƒกแƒ˜แƒ; แƒ›แƒ” แƒแƒ  แƒ›แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒชแƒแƒšแƒ™แƒ” แƒกแƒ˜แƒœแƒขแƒแƒฅแƒกแƒ˜แƒก แƒ“แƒแƒ›แƒแƒฎแƒกแƒแƒ•แƒ แƒ”แƒ‘แƒ แƒ แƒ”แƒ’แƒฃแƒšแƒแƒ แƒฃแƒšแƒ˜ แƒ’แƒแƒ›แƒแƒœแƒแƒ—แƒฅแƒ•แƒแƒ›แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

ack 'vars+adds+'

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

แƒฃแƒคแƒ แƒ แƒ แƒ—แƒฃแƒšแƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜

ack '*s+[vd+.d+.d+]'

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

แƒฎแƒจแƒ˜แƒ แƒแƒ“ แƒ’แƒกแƒฃแƒ แƒ— แƒ“แƒแƒขแƒแƒ•แƒแƒ— แƒจแƒ”แƒ“แƒ”แƒ’แƒ”แƒ‘แƒ˜ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ˜แƒก, แƒ แƒแƒช แƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ แƒจแƒแƒ‘แƒšแƒแƒœแƒก. --output แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜ แƒแƒฅ แƒ“แƒแƒ’แƒ”แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒแƒ— (-o)

ack -o '*s+[vd+.d+.d+]'

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

แƒ’แƒแƒ แƒ“แƒ แƒแƒ›แƒ˜แƒกแƒ, แƒคแƒ แƒฉแƒฎแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒจแƒ”แƒ•แƒแƒ แƒฉแƒ˜แƒแƒ— แƒœแƒแƒžแƒแƒ•แƒœแƒ˜ แƒœแƒแƒฌแƒ˜แƒšแƒ˜ แƒ“แƒ แƒจแƒ”แƒ•แƒ˜แƒ“แƒ”แƒ— แƒ›แƒแƒก แƒ’แƒแƒ›แƒแƒกแƒแƒ•แƒแƒšแƒจแƒ˜ $[group number] แƒชแƒ•แƒšแƒแƒ“แƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—. แฒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“,

ack --output='version is $1' '*s+[v(d+.d+.d+)]'

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

แƒแƒ™แƒก แƒแƒฅแƒ•แƒก แƒกแƒแƒกแƒแƒ แƒ’แƒ”แƒ‘แƒšแƒ แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒ˜ -- แƒ“แƒ˜แƒแƒžแƒแƒ–แƒแƒœแƒ˜-แƒ“แƒแƒฌแƒงแƒ”แƒ‘แƒ ะธ -- แƒ“แƒ˜แƒแƒžแƒแƒ–แƒแƒœแƒ˜-แƒ‘แƒแƒšแƒ. แƒ”แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ˜แƒแƒœ แƒ แƒแƒชแƒ
แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜ แƒ˜แƒœแƒแƒฎแƒ”แƒ‘แƒ แƒแƒ แƒ แƒ”แƒ แƒ— แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒจแƒ˜, แƒแƒ แƒแƒ›แƒ”แƒ“ แƒ›แƒ แƒแƒ•แƒแƒšแƒฎแƒแƒ–แƒแƒ•แƒแƒœแƒ˜ แƒคแƒแƒ แƒ›แƒ˜แƒ—.

แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒแƒ แƒ˜แƒก แƒคแƒแƒ˜แƒšแƒ˜ sql แƒ™แƒแƒ“แƒ˜แƒ—

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

แƒ›แƒแƒ“แƒ˜แƒ— แƒ’แƒแƒ›แƒแƒ•แƒงแƒแƒ— แƒกแƒ•แƒ”แƒขแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜. แƒ‘แƒšแƒแƒ™แƒ˜แƒก แƒ“แƒแƒกแƒแƒฌแƒงแƒ˜แƒกแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒฎแƒแƒ–แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ˜แƒฌแƒงแƒ”แƒ‘แƒ SELECT-แƒ˜แƒ—, แƒฎแƒแƒšแƒ แƒ“แƒแƒกแƒแƒกแƒ แƒฃแƒšแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒฎแƒแƒ–แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ˜แƒฌแƒงแƒ”แƒ‘แƒ FROM-แƒ˜แƒ—.

ack --range-start ^SELECT --range-end ^FROM 'td+.' ./test.sql

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

แƒ—แƒฃ แƒกแƒแƒซแƒ˜แƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒœแƒแƒ—แƒฅแƒ•แƒแƒ›แƒ˜ แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒกแƒžแƒ”แƒชแƒ˜แƒแƒšแƒฃแƒ  แƒกแƒ˜แƒ›แƒ‘แƒแƒšแƒแƒ”แƒ‘แƒก, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜, แƒคแƒ แƒฉแƒฎแƒ˜แƒšแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒกแƒฎแƒ•แƒ, แƒ›แƒแƒจแƒ˜แƒœ แƒ˜แƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ› แƒแƒ  แƒ’แƒแƒ”แƒฅแƒชแƒ”แƒ— แƒ›แƒแƒ— แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒก, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜ -Q.

# ะŸะพะธัะบ ั ัะบั€ะฐะฝะธั€ะพะฒะฐะฝะธะตะผ 
ack --json 'mysql.'    
# ะŸะพะธัะบ ะฑะตะท ัะบั€ะฐะฝะธั€ะพะฒะฐะฝะธั
ack --json -Q mysql.

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ—แƒแƒœ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ

แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ— แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒ˜ แƒ’แƒแƒคแƒแƒ แƒ—แƒแƒ”แƒ‘แƒ˜แƒ—

ack -f --js

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

แƒ˜แƒžแƒแƒ•แƒ”แƒ— แƒงแƒ•แƒ”แƒšแƒ js แƒคแƒแƒ˜แƒšแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ—แƒ แƒกแƒแƒฎแƒ”แƒšแƒ˜ แƒ˜แƒฌแƒงแƒ”แƒ‘แƒ P*-แƒ˜แƒ— แƒแƒคแƒชแƒ˜แƒ˜แƒก (-g).

ack -g --js '/Pa.+.js$'

แƒแƒ™แƒ˜ แƒ’แƒ แƒ”แƒžแƒ–แƒ” แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜แƒ

แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ

แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒแƒก แƒแƒฅแƒ•แƒก แƒกแƒแƒ™แƒฃแƒ—แƒแƒ แƒ˜ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒก แƒคแƒแƒ˜แƒšแƒ˜. แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒฅแƒแƒœแƒ“แƒ”แƒ— แƒ แƒแƒ’แƒแƒ แƒช แƒ’แƒšแƒแƒ‘แƒแƒšแƒฃแƒ แƒ˜ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก (~/.ackrc), แƒแƒกแƒ”แƒ•แƒ” แƒšแƒแƒ™แƒแƒšแƒฃแƒ แƒ˜ แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒ˜ แƒกแƒแƒฅแƒแƒฆแƒแƒšแƒ“แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก (แƒกแƒแƒฅแƒแƒฆแƒแƒšแƒ“แƒ”แƒจแƒ˜ แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ— .ackrc แƒคแƒแƒ˜แƒšแƒ˜).

แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜แƒก แƒฃแƒ›แƒ”แƒขแƒ”แƒกแƒแƒ‘แƒ, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒฉแƒแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜แƒ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ”แƒ‘แƒจแƒ˜, แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒฎแƒ”แƒšแƒ˜แƒ— แƒ›แƒ˜แƒฃแƒ—แƒ˜แƒ—แƒแƒ—, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ’แƒแƒ›แƒแƒซแƒแƒฎแƒ”แƒ‘แƒ. แƒ›แƒแƒ“แƒ˜แƒ— แƒจแƒ”แƒ•แƒฎแƒ”แƒ“แƒแƒ— แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ›แƒแƒ—แƒ’แƒแƒœแƒก.

แƒกแƒแƒฅแƒแƒฆแƒแƒšแƒ“แƒ˜แƒก แƒ˜แƒ’แƒœแƒแƒ แƒ˜แƒ แƒ”แƒ‘แƒ แƒซแƒ˜แƒ”แƒ‘แƒ˜แƒกแƒแƒก

--ignore-dir=dist

แƒ›แƒแƒ“แƒ˜แƒ— แƒ“แƒแƒ•แƒแƒ›แƒแƒขแƒแƒ— แƒžแƒ”แƒ แƒกแƒแƒœแƒแƒšแƒฃแƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒขแƒ˜แƒžแƒ˜ -vue.

--type-add=vue:ext:js,vue

แƒแƒฎแƒšแƒ แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— --vue แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜ แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒกแƒแƒซแƒ”แƒ‘แƒœแƒแƒ“ .แƒ•แƒฃ. แฒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“: ack --vue แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ.
แƒแƒ› แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ›แƒ˜แƒฃแƒ—แƒ˜แƒ—แƒแƒ— แƒ’แƒแƒคแƒแƒ แƒ—แƒแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ. แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒแƒฅ, -vue-แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒกแƒแƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ“แƒ”แƒ‘แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜:
.js แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜.

แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒ˜แƒ’แƒœแƒแƒ แƒ˜แƒ แƒ”แƒ‘แƒ, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“ minified *.min.js

--ignore-file=match:/.min.js$/

แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก

CentOS

yum update -y && yum install ack -y

Ubuntu

apt-get update -y && apt-get install ack-grep -y

Mac OS

brew update && brew install  ack

แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ แƒกแƒแƒ˜แƒขแƒ˜แƒ“แƒแƒœ

curl https://beyondgrep.com/ack-v3.3.1 > ~/bin/ack && chmod 0755 ~/bin/ack

แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜ แƒ แƒ”แƒ“แƒแƒฅแƒขแƒแƒ แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก:

แƒ“แƒแƒกแƒ™แƒ•แƒœแƒ

แƒ”แƒก แƒแƒ  แƒแƒ แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒ. แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒกแƒ แƒฃแƒšแƒ˜ แƒกแƒ˜แƒ˜แƒก แƒœแƒแƒฎแƒ•แƒ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒ—:

ack โ€“-help
# ะธะปะธ
ack --man

ack แƒฃแƒขแƒ˜แƒšแƒ˜แƒขแƒ แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒ’แƒแƒฎแƒแƒ“แƒแƒ— แƒขแƒ”แƒ แƒ›แƒ˜แƒœแƒแƒšแƒจแƒ˜ แƒซแƒ”แƒ‘แƒœแƒ แƒฃแƒคแƒ แƒ แƒ›แƒแƒกแƒแƒฎแƒ”แƒ แƒฎแƒ”แƒ‘แƒ”แƒšแƒ˜ แƒ“แƒ แƒ›แƒแƒฅแƒœแƒ˜แƒšแƒ˜. แƒ“แƒ แƒ›แƒ˜แƒšแƒกแƒแƒ“แƒ”แƒœแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— (ack -C 10 แƒ’แƒแƒ›แƒแƒ แƒฏแƒแƒ‘แƒ | แƒแƒฆแƒ˜แƒแƒ แƒ” แƒกแƒแƒ›แƒงแƒแƒ แƒ) แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ— แƒซแƒšแƒ˜แƒ”แƒ แƒ˜ แƒ™แƒแƒ›แƒ‘แƒแƒ˜แƒœแƒ˜ แƒคแƒแƒ˜แƒšแƒฃแƒ  แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒจแƒ˜ แƒ“แƒ แƒ—แƒแƒ•แƒแƒ“ แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒจแƒ˜ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒซแƒ˜แƒ”แƒ‘แƒšแƒแƒ“ แƒ“แƒ แƒ’แƒแƒกแƒแƒคแƒ˜แƒšแƒขแƒ แƒแƒ“.

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ