/ Premenovanie súborov s podčiarknutím, premenovaním

Bash premenujte súbory s podčiarknutím, premenujte

Mám súbory s názvom CULT_2009_BARRIERS_EXP_Linear.dbf
a chceli by ste ich premenovaťna CULT_BARRIERS_EXP_Linear.dbf. Súbory majú dátum s predponou, ktoré sa vždy líšia pri zobrazení. Snažil som sa ich nahradiť regulárnymi výrazmi. Chcem otestovať reťazec, ak obsahuje čísla a potom premenovať. Použil som

    if [[  $file =~ [0-9]   ]];  then rename -v "s/[0-9]//g" * && rename -v s/[_]_/_/ *;

ktorý čiastočne funguje. V ideálnom prípade by som chcel mať jeden premenovaný príkaz, pretože je to dobrá prax

odpovede:

1 pre odpoveď č. 1

Jediný príkaz premenovania by bol dosť. Stačí spustiť nižšie uvedený príkaz v adresári, kde .def Súbory sú skutočne uložené.

rename -v "s/_[0-9]+//g" *.dbf

[0-9]+ sa zhoduje s jedným alebo viacerými číslicami [0-9] bude zodpovedať jednocifernému znaku. + opakuje predchádzajúci token raz alebo viackrát.