Я пытаюсь пройти процесс изменения символической ссылки в ubuntu 14.04 LTS, ничего не нарушая. Могу ли я просто переименовать папку и изменить способ, которым файл виртуальных хостов указывает на каталог? Чтобы не столкнуться с кучей проблем и не сломать сервер, мне интересно, делал ли кто-нибудь это раньше незаметно?
Симлинк, который вы пытаетесь изменить в корневой папке вашего веб-сервера? Если да, то да, просто создайте новую папку и направьте на нее свой виртуальный хост.
Я хотел переименовать все ссылки, которые содержат заданное имя папки, которую я собираюсь переименовать.
Итак, я намерен распространить переименование на все целевые пути символических ссылок, указанные там.
Я создал renamer.sh с помощью этого кода:
#!/bin/bash
where=$1
what=$2
# find the link with folder having given name
find $where -type l -ilname */*$what*/* 2>/dev/null
# give the target path of each listed link
find $where -type l -ilname */*$what*/* 2>/dev/null | xargs readlink
Я хотел посмотреть из / , передав имя папки, которую я хочу изменить, находясь в более близкой родительской папке, поэтому первый аргумент /, второй аргумент:
./renamer.sh / <foldername>
Первая команда find возвращает полный путь к найденным символическим ссылкам.
Затем вторая команда find направляет все найденные полные пути в команду readlink, которая возвращает адрес, на который нацелены эти символические ссылки.
...
кодирую еще немного, пакетное переименование близко...
...
P.S: Из Debian 10 Buster мне нужно было установить «readlink» и «findutils»
sudo apt install readlink findutils
Пока