Pervardinam bylas iš mažųjų raidžių į didžiasias

Šiandien man prireikė pervardint kalną bylų iš mažųjų raidžių į didžiąsias. Iš pradžių bandžiau :gg, tačiau galų gale supratau, jog tai galima padaryt paprasčiau. Pasirašau pats sau šią komandą čia, kad nepamiršt. O gal būt kažkas dar tuo pasinaudos:
for lower in `find ./ -type f -name ‘*.mib’|grep [[:lower:]]|sed -e ’s/.\///g’`;do upper=`echo $lower|sed -e ‘y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/’`;echo “Keiciamas failas is $lower i $upper”;mv $lower $upper;done

@m

Komentarų skaičius: 4

  1. uhu :) neblogai!
    manau man pravers!

  2. Truptėlis pakeitimų. Pa`bainchmark`inau šitą reikalą ir atradau, jog yra greitesnis būdas. Taigi keičiam script`ą į:
    for lower in `find ./ -type f -name ‘*.mib’|grep [[:lower:]]|sed -e ’s/.\///g’`;do upper=`echo $lower|tr a-z A-Z`;echo “Keiciamas failas is $lower i $upper”;mv $lower $upper;done
    ir sutaupom apie 1sek. 100-ui bylų (files)

  3. arba galima

    find ./ -type f -name ‘*.mib’|perl -ne ‘chomp;rename $_, uc($_)’

    :-)

  4. tik dėl kabučių tai duokit į dūdą softui, kuris jas išvartė pagal jam vienam žinomas taisykles. Visur turėjo būti paprasti apostrofai.