Схелл Геек Преименовање више фајлова одједном
Рецимо да имате директоријум са стотинама датотека са погрешним именима датотека, а желите да замените сваки фајл који садржи тест са прод. (ово је измишљени пример). То можемо лако урадити помоћу команде “за” у басх-у, комбиновано са мало басх доброте. Данас ћемо научити како замијенити текст у варијабли у петљи фор.
Команда "за" ради овако:
за вар ин; до $ вар;
Можете заменити са било којим обрасцем подударања датотека, као што је * или * .ткт, и можете заменити са било којом линук командом. Наредба ће бити покренута у секвенци на свакој датотеци која одговара обрасцу подударања датотека.
Ово је место где руковање басх променљивим чини још занимљивијим. Уместо да радимо нешто попут "мв $ вар", можемо заменити текст у имену датотеке помоћу ове синтаксе:
$ вар / оригиналтект / реплацетект
Сада, ако покренемо ову команду у нашем директоријуму:
за ф ин *; до мв $ ф $ ф / тест / прод;
За сваку датотеку која одговара *, басх ће извршити наредбу сличну овоме:
мв тест.цонфиг прод.цонфиг
Открио сам да је знање о љусци од непроцјењиве важности при администрирању сервера или само за управљање збирком датотека, те ми је уштедило вријеме што би иначе било ручно.
И да, схватам да постоји велики број алата који могу да изврше преименовање више датотека.