Я на Ма c Os 10.14.6 и у меня есть каталог, который содержит подкаталоги, которые все содержат текстовые файлы. В целом, существует много сотен текстовых файлов.
Я бы хотел go просмотреть текстовые файлы и сгруппировать их в пронумерованные папки, чтобы каждая папка содержала 5 файлов (их не нужно группировать по каким-либо общий фактор (например, они не должны быть сгруппированы по имени или размеру). Им просто нужно иметь 5 файлов в папке)
Пример Перед запуском скрипта
apple.txt
new york.txt
ranger.txt
london.txt
the mountains (55).txt
so wonderful - new version.txt
my life a new.txt
orange.txt
property.txt
space.txt
После запуска скрипта
**In Folder 01**
apple.txt
new york.txt
ranger.txt
london.txt
the mountains (55).txt
**In Folder 02:**
so wonderful - new version.txt
my life a new.txt
orange.txt
property.txt
space.txt
(Примечание: папки просто называются 01, 02, 03,
, у них нет специальные имена).
Как бы я это сделал?
Шаги, которые я пробовал
Google вокруг, кажется, Bash будет лучше для этого ,
В Bash вы можете использовать команду a
, чтобы создать массив для хранения файлов, что позволит вам работать с ними. Затем вы можете l oop просмотреть файлы и поместить их в массив.
declare -a arrFiles
for file in cd
do
arrFiles=("${Files[@]}" "$file")
done
Bash также имеет команду mv
, которую можно использовать для перемещения файлов в новые места.
Однако я не уверен, как объединить эти команды для группировки файлов в пакеты по 5.
Обратите внимание: пока решение работает на терминале ОС Ma c, оно не нужно использовать Bash. Тем не менее, от Googling, Bash кажется наиболее подходящим.