Есть Nas Synology, на котором лежит большой каталог с кучей подкаталогов с файлами (т.н. библиотека Траума).
К Nas есть доступ по telnet.
Хочу сделать hardlink-и на определённые типы файлов в данном каталоге (*.fb2.zip) (symlink-и - видны только при "общении" с NAS по telnet, не видны ни в Web-интерфейсе, ни в при просмотре устройства через smb).
Т.к. знаний (и уж тем паче опыта) работы с nix-системами, увы, 0 - то пока не понимаю, как это ... правильно сделать.
Создаю структуру каталогов
Код:
ls TraumAll -FR | grep ':' | sed 's/://g' | sed 's/TraumAll/mkdir "TraumRead/g' | sed 's/\$/\\$/' | sed 's/$/"/' | sh
из TraumAll в TraumRead
Делаю hardlink на файлы типа *.fb2.zip
Код:
find TraumAll -name '*.fb2.zip' | ''Получил список файлов
sed 's/TraumAll/"TraumAll/g' | ''поставил кавычку (") в начале строки
sed 's/\$/\\$/g' | ''Экранирую знак $ в названии
sed 's/$/"/' | ''поставил кавычку (") в конце строки
sed 's/[ -я]*/& &/g' | ''"Задвоил" имя файла
sed 's/"TraumAll/ln "TraumAll/1' | ''поставил в начале строки ln
sed 's/TraumAll/TraumRead/2' | ''поменял во "втором" имени файла каталог назначения
sh
Что не нравится - как то очень "тяжеловесно" получилось (особенно с добавлением двойных кавычек перед началом имени каталога и с добавлением их в конце, задвоением имени файла).
Что совсем не нравится - это то, что я создаю "лишние" каталоги.
Т.е., если в каком-либо исходящем каталоге/подкаталоге не будет файлов нужного мне типа, он (это каталог) всё равно будет создан.
Чего жду:
1) Подсказки - как правильно создавать каталоги, не создавая лишних, и не пытаясь создать нужный каталог перед каждым созданием hardlink-а?
2) Доброй критики :) о направлении мыслей/действий.