Коришћење претраге садржаја датотека у Линуксу може значајно смањити време и труд потребан за претрагу одређених информација у великим и сложеним фајл системима.
Ова претрага може бити посебно корисна када треба да пронађете датотеке које садрже одређени стринг или кључну реч или када треба да пронађете све датотеке које одговарају одређеном обрасцу или критеријуму.
Претраживање датотека по садржају може се користити за разне задатке, као што је претраживање:
Општа сврха претраживања датотека по садржају је да олакша рад са системом датотека и проналажење потребних информација у систему датотека.
Почнимо са услужним програмом ack. Направљен је 2005. године као алтернатива grep-у и брзо је постао популаран међу програмерима.
Има неколико предности у односу на grep
, укључујући:
grep
. То значи да можете лако пронаћи датотеке скривене у систему.Примери коришћења команде ack:
- Пронађи све датотеке у тренутној фасцикли и њеним подфасциклама које садрже реч
"test": ack "test"
- Исто, али искључујући датотеке са
.bak: ack "test" --ignore-file=match:/.bak$/
- Пронађи све датотеке у тренутној фасцикли које садрже стринг „hello“ и испиши прва 2 реда сваке датотеке:
ack "hello" --heading --max-count=2
Други занимљив алат је ripgrep. Сличан је ack-у на много начина, али користи бржи алгоритам претраге, што га чини посебно корисним за велике пројекте.
Ево неколико примера:
"test": rg "test"
.bak: rg "test" --glob "!*.bak"
rg "hello" --heading --max-columns=2
Коначно, вреди поменути fzf. То није само претраживач низова као ack и ripgrep. Fzf се користи као услужни програм за претрагу датотека, фасцикли и ставки на листи. У супротном, ради као ack/ripgrep, али са додатном могућношћу филтрирања резултата уживо. Ево неколико примера:
- Претражите датотеке које почињу са словом F на рачунару:
locate F | fzf -m
- Изађите из тренутне фасцикле и идите у жељени директоријум:
cd **<TAB> | fzf
- Изаберите SVN ревизије и копирајте број у међуспремник:
svn log | fzf --reverse --ansi | awk '{print $1}' | pbcopy
Надамо се да ће вам ови алати помоћи да брзо и ефикасно пронађете датотеке и низове који су вам потребни. Који год да изаберете, сви они нуде напредну претрагу која може знатно убрзати ваш рад.