如何在shell脚本中将子目录中的文件链接到另一个子目录

如何在shell脚本中将子目录中的文件链接到另一个子目录

我当前的目录包含两个目录test1test2
file1存在于test1.

如何在文件夹中创建符号链接test2/linfile1

链接操作后链接文件test2/lin应该指向test1/file1

答案1

系统的符号链接解析是相对于目标的(当然,除非链接是绝对的)。

因此,必须将其视为进入最终目录。在这种情况下,这将是(明确命名目标):

cd test2/lin
ln -s ../../test1/file1 file1

来源不会改变,这就是符号链接的有用“内容”。因此,如果您不更改目录,则:

ln -s ../../test1/file1 test2/lin/file1

答案2

在您当前的目录中,它将是ln -s test1/file1 test2/lin.

您还可以使用绝对路径。
如果目录带有test1andtest2/absolute/path/to/my2subdirs命令将变为dirln -s /absolute/path/to/my2subdirs/test1/file1 /absolute/path/to/my2subdirs/test2/lin并且您可以从该目录外部运行它

相关内容