Работаю с линуксом, баш.
У меня есть один каталог с 100 папками, каждая из которых имеет свое имя.
В каждой из этих 100 папок есть файл с именем first.bars (так что у меня есть 100 файлов с именем first.bars). Хотя все они называются first.bars, на самом деле файлы немного отличаются.
Я хочу, чтобы все эти файлы были перемещены в одну новую папку и переименовали/нумеровали эти файлы, чтобы я знал, какой файл из какой папки. Таким образом, первый файл first.bars нужно переименовать в 001.bars, второй — в 002.bars и т. д.
Я пробовал следующее:
ls -d * >> /home/directorywiththe100folders/list.txt
cat list.txt | while read line;
do cd $line;
mv first.bars /home/newfolder
Это не работает, потому что я не могу иметь 100 файлов с одинаковыми именами в одной папке. Поэтому мне нужно только знать, как их переименовать. Переименование должно быть связано с катом list.txt, так как первая строка — это папка, содержащая первый перемещаемый и переименовываемый файл. Этот файл будет называться 001.bars.