Unix - brisanje prvih 22 znakov iz imen datotek

Za naše cenjene znalce imam vprašanje... verjetno Unix kačja komanda ali AWK na Solarisu...

Kako bi odstranil prvih 22 znakov iz imen datotek

iz
NEKAJJ20101025003030NEKAJDRUGEGA-23332-64444525102010000030
v
NEKAJDRUGEGA-23332-64444525102010000030

Hvala

6 odgovorov

for i in `ls -1`; do
ime=`echo $i | cut -c 23-`
`mv $i $ime`
done

Predlagam pa da probaš tako da zamenjaš tale "mv" z "echo" , da boš videl kaj bo dejansko naredilo, preden greš pametno slepo probavat naslednjo kodo... Pazi da bo tvoja bash.sh skriptica imela dovolj dolgo ime, ker bo preimenovala tudi sama sebe na koncu :D

1

for oldfile in ls -1 *; do newfile=echo $oldfile | cut -c23-; mv $oldfile $newfile; done
tole bi blo pomoje lahk vredu ;)

2

lo... tole je blo pa hecno zdej :D

2

mislim da bo imel dovolj različic kode za tole stvar :) hehe

1

neki bo ze zmucku skp :D

1

Poskusil sem kaines-ovo različico ker je one line zadeva (potrebujem namreč samo enkrat).

Ker imam obe vrsti fajlov (nova in stara poimenovanja, sem moral miniaturno modificirati v

for oldfile in `ls -1 **NEKAJ_***`; do newfile=`echo $oldfile | cut -c23-`; mv $oldfile $newfile; done

Hvala obema!