Выполнение ln -fs ./source/*
в целевом каталоге не работает
Это показывает:
./source/file1 is not a directory
Я думаю, что это - проблема в том, как Вы определяете путь файлов, возможно, при определении полного пути, это могло бы работать.
От man ln
:
РЕЗЮМЕ
ln [OPTION]... [-T] TARGET LINK_NAME (1st form) ln [OPTION]... TARGET (2nd form) ln [OPTION]... TARGET... DIRECTORY (3rd form) ln [OPTION]... -t DIRECTORY TARGET... (4th form)
ОПИСАНИЕ
В 1-й форме создайте ссылку для ПРЕДНАЗНАЧЕНИЯ с именем для LINK_NAME. В 2-й форме создайте ссылку для ПРЕДНАЗНАЧЕНИЯ в текущем каталоге. В 3-х и 4-х формах создайте ссылки на каждую ЦЕЛЬ в КАТАЛОГЕ. Создайте жесткие ссылки по умолчанию, символьные ссылки с - символьный.
Читая его тщательно, Вы будете видеть (предполагающий, что исходная папка содержит больше чем один файл) использование 3-й формы. Так как Вы не указывали каталог, последнее имя файла интерпретируется как каталог.
Если Вы в каталоге, Вы хотите создать символьные ссылки в, можно просто добавить .
(текущий каталог) в конце команды:
ln -fs ./source/* .