LinuxForum.Fans
Тема

Подскажите, пожалуйста по Shell'у

Автор: xBox 3 сообщений 1551 просмотров
#27697

Суть вот в чем...
Есть папка А с большим количеством файлов, необходимо перенести все файлы из папки А в папку Б с переименованием файлов в 0,1,2,3...n.
:o

Задаю начальные директории
FROMDIR=/1/
TODIR=/Test/

переменную, которая должна имена выдавать...
$j=0

и собственно цикл...
for i in $FROMDIR/*;
do
cp $i $j
mv $j $TODIR
$j=$j+1
done

ругается...)

#27704

Первое, что пришло в голову.

text
j=0
for i in `find $FROMDIR`; do
    cp $i $j
    mv $j $TODIR
    i=$(($i+1))
done

Попробуйте.

#27710

Northsoft, нулевой файл создается, а дальше не прибавляется 1, ругается, что 0 уже есть...
сначала выдал строку вроде ommiting directory: FROMDIR, затем ругнулся на 0 (No such directory), затем создал все-таки этот преславутый 0 и начал ругаться (см. выше)...

Northsoft написал:
Первое, что пришло в голову.
text
j=0
for i in `find $FROMDIR`; do
    cp $i $j
    mv $j $TODIR
    i=$(($i+1))
done

Попробуйте.

i=$(($i+1)) тут наверное j нужно использовать?



Northsoft, спасибо за помошь, проблему решили :)

Войдите или зарегистрируйтесь, чтобы ответить.