如何在不破坏符号链接目录的情况下更改其名称?

如何在不破坏符号链接目录的情况下更改其名称?

我正在尝试在不破坏任何东西的情况下完成在 ubuntu 14.04 LTS 上更改符号链接的过程。我是否只需重命名文件夹并更改虚拟主机文件指向目录的方式?为了避免遇到一堆问题并破坏服务器,我想知道是否有人以前顺利地做过这件事?

答案1

您尝试更改的符号链接是否是 Web 服务器的根文件夹?如果是,那么答案是肯定的,只需创建一个新文件夹并将虚拟主机指向该文件夹即可。

答案2

我正在寻找重命名包含要重命名的给定文件夹名称的所有链接。

因此我的目的是将重命名传播到指向那里的所有符号链接目标路径。

我创建重命名器使用以下代码:

#!/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 中,该命令返回这些符号链接的目标位置。

...

再多编码一点,批量重命名就近了……

...

PS:从 Debian 10 Buster 开始我需要安装“readlink”和“findutils”

sudo apt install readlink findutils

再见

相关内容