Како користити команду фд на Линуку

На Линук-у, фд је лакша алтернатива команди финд. Има поједностављену синтаксу, користи разумне подразумеване вредности и има уграђено здраворазумско понашање. Хајде да га прођемо кроз његове кораке.

фд наспрам финд: у чему је разлика?

Тхе фд команда није намењена да замени традиционална команда финд, која има био на Линук-у, па, заувек. Уместо тога, фд покушава да задовољи већину уобичајених употреба финд на једноставнији начин — и често је осам или девет пута бржи од финд. Можете видети неке од његових мерила на пројекту Страница ГитХуб спремишта.

фд има обојени излаз, сличан оном код неких лс режима. Рекурзиван је, али подразумевано не претражује скривене директоријуме. То зна о Гиту и такође ће аутоматски игнорисати све обрасце у вашој датотеци „.гитигноре“.

фд подразумевано не разликује велика и мала слова. Међутим, ако ваш образац за претрагу садржи велико слово, фд ради у режиму који разликује велика и мала слова. Наравно, можете заменити подразумеване вредности, али у многим случајевима оне раде у вашу корист.

Инсталирање фд

Од Убунту 19.04 (Дисцо Динго,) можете директно инсталирати фд позивањем званично одржаваног пакета помоћу апт-гет. Ако користите старију верзију Убунтуа, проверите упутства за инсталацију на страници Гит чворишта.

Откуцајте следеће:

sudo apt-get install fd-find

У Убунту-у, команда је фдфинд да би се избегао сукоб имена са другим постојећим услужним програмом. Ако желите да буде фд, можете подесити псеудоним:

alias fd=fdfind

Да бисте учинили псеудонимом постојаним како би остао доступан након поновног покретања, ставите га у датотеку „.басхрц“ или „.басх_алиасес“.

  5 Хероку алтернатива за бесплатни фулл стацк хостинг

Да бисте инсталирали фд на Федора, откуцајте ову команду:

sudo dfn install fd-find

На Мањаро укуцајте следеће:

sudo pacman -Syu fd

фд наспрам фдфинд

Да бисмо избегли забуну, оставили смо команду са подразумеваним именом, фдфинд, на нашем Убунту тест рачунару. фд и фдфинд су потпуно иста команда, као што ћете видети у следећем примеру (ако тражите од фдфинд да прикаже своју верзију, он себе назива „фд“):

fdfind --version

Команду ћемо назвати „фед“, али у примерима ћемо користити Убунту „фдфинд“. У другим дистрибуцијама Линука можете да откуцате „фд“ уместо „фдфинд“ да бисте уштедели неколико притисака на тастер.

Једноставне претраге са фд

Ако користите фд без опција командне линије, он се понаша помало као лс, осим што подразумевано наводи датотеке у поддиректоријумима.

Откуцајте следеће:

fdfind

Излаз се појављује у различитим бојама за различите типове датотека и директоријуме.

Да бисте видели датотеке одређеног типа, користите опцију -е (ектенсион). Имајте на уму да не морате испред проширења ставити тачку (.), нити се разликује велика и мала слова.

На пример, можете да откуцате следеће:

fdfind -e png

Сада су једине наведене датотеке ПНГ слике.

Да бисте потражили једну датотеку, унесите њено име у командну линију, на следећи начин:

fdfind index.page

Датотека је пронађена и случајно се налази у поддиректоријуму. Нисмо морали да кажемо фд-у да тражи рекурзивно.

Да бисте започели претрагу у одређеном директоријуму, укључите путању датотеке у командну линију. Следећа команда ће покренути претрагу у директоријуму „/етц“ и потражити датотеке које укључују „пассвд“ у називу датотеке:

fdfind passwd /etc

Овде тражимо све датотеке Ц изворног кода које садрже „цоорд“ у имену датотеке:

fdfind -e c coord

Пронађене су две подударне датотеке.

фд и Гит

Гит је изузетно популаран систем контроле верзија изворног кода. Ако користите Гит на свом рачунару, вероватно користите датотеке „.гитигноре“ да бисте Гиту рекли којим датотекама треба да се бави, а које може да игнорише. Подразумевано, фд поштује подешавања у вашим „.гитигноре“ датотекама.

  Како делити музику са неким другим помоћу АирПодс-а

У овом директоријуму имамо Гит спремиште и датотеку „.гитигноре“. Укуцавамо следеће:

ls -adl .git*

Замолимо фд да наведе све датотеке које садрже „цоорд“ у имену датотеке. Затим ћемо поновити претрагу и користити опцију -И (без игнорисања). Ово говори фд-у да игнорише подешавања у датотеци „.гитигноре“ и пријави сваку одговарајућу датотеку.

Да бисмо све ово урадили, откуцавамо следеће:

fdfind coord
fdfind coord -I

Две додатне датотеке у другом скупу резултата су објектне датотеке. Они се креирају када се компајлира датотечни програм. Затим их користи повезивач за креирање коначне извршне верзије програма.

Програми за контролу верзија изворног кода обично игноришу објектне датотеке. Они се регенеришу сваки пут када компајлирате свој програм, тако да не морате да чувате њихове копије. Постоји унос у датотеци „.гитигноре“ који налаже Гиту да игнорише објектне датотеке, а по подразумеваној вредности, фд их такође игнорише.

Опција -И (без игнорисања) приморава фд да врати све што пронађе, уместо да га води „.гитгиноре“ фајл.

Типови датотека и осетљивост на велика и мала слова

Можете тражити од фд-а да тражи директоријуме, датотеке (укључујући оне које су извршне и празне) и симболичке везе. То можете учинити помоћу опције -т (тип), праћене једним од слова у наставку:

ф: Фајл.
д: Именик.
л: Симболичка веза.
к: Извршна датотека.
е: Празна датотека.

Следеће тражи директоријум који се зове слике:

fdfind -td images

Пронађено је подударање, један поддиректоријум нижи од тренутног.

Хајде да видимо како осетљивост на велика и мала слова функционише са обрасцима претраге. Укуцавамо следеће да бисмо прво тражили датотеке које садрже „гео“ у називима датотека, а затим оне које садрже „гео“ у називима датотека:

fdfind -tf geo
fdfind -tf Geo

У првој команди смо користили образац претраживања малим словима, што је довело до тога да фд ради на начин без обзира на велика и мала слова. То значи да су и „Гео“ и „гео“ важећа подударања.

  Гоогле камера стиже на Гоогле Плаи, има нови режим замућења сочива

Наша друга команда је садржала знак великих слова, што је довело до тога да фд ради на начин који разликује велика и мала слова. То значи да је само „Гео“ валидно подударање.

Извршење команде

Команда фд вам омогућава да покренете другу команду и извршите је на свакој од пронађених датотека.

Рецимо да знамо да постоји а Зип фајл негде у нашем стаблу директоријума изворног кода. Можемо га потражити помоћу следеће команде, која тражи датотеке са екстензијом ЗИП:

fdfinf -e zip

Са опцијом -к (екец), можете проследити сваку пронађену датотеку другој команди коју ће она обрадити. На пример, можемо да откуцамо следеће да позовемо распакујте услужни програм да распакујете нашу ЗИП датотеку („{}“ је чувар места који представља пронађену датотеку):

fdfind -e zip -x unzip {}

Ово ће распаковати датотеку у тренутном радном директоријуму. Ако желимо да се распакује у директоријум који садржи ЗИП датотеку, можемо да користимо један од следећих чувара места:

{}: Пуна путања датотеке и назив пронађене датотеке.
{/}: Име пронађене датотеке.
{//}: Директоријум који садржи пронађену датотеку.
{/.}: Име пронађене датотеке, без екстензије.

Да би наша ЗИП датотека била пронађена и распакована у директоријуму који је садржи, можемо да користимо опцију унзип -д (директориј) и проследимо чувар места родитељског директоријума ({//}):

fdfind -e zip -x unzip {} -d {//}

ЗИП датотека се затим налази и распакује у свом надређеном директоријуму.

Шта желите да пронађете?

Пошто покрива најчешће употребе са таквом једноставношћу, фд може лако постати ваша команда за „проналажење“. Кад год вам затребају његове напредније функције, увек се можете вратити том искусном ветерану, пронаћи.