linux - 在 Linux 中使用符号链接(symbolic link)将文件从一个位置 move 到另一个位置

标签 linux ubuntu move symlink

我想知道当在 A 位置创建文件时,是否可以通过符号(软)链接将文件从一个位置 (A) move 到另一个位置 (B)。

最佳答案

因此,您有一些程序在某个目录中创建文件(例如在 /fixed/location/ 中),并且您希望数据位于其他位置(例如 /data/dir/somefile.txt...)

如果您提前知道所创建文件的名称,则可以在启动程序之前将它们设置为符号链接(symbolic link):

 ln -s /data/dir/somefile.txt /fixed/location/file.txt

如果您在运行程序之前创建该符号链接(symbolic link),即使该文件不存在,它也会将数据写入 /data/dir/somefile.txt(但当您键入 ln -s 时,目录 /data/dir 应该存在)

另一种(Linux 特定的)可能性是进行绑定(bind)安装。如果例如如果您希望 /usr/src/ 中的数据驻留在 /home/Src/ 中,您可以先 mkdir/home/Src 然后例如在您的 /etc/fstab 文件中添加以下行:

 /usr/src              /home/Src                 none    bind    0 0

实际上,我正在为每个 /home/ 是不同文件系统的 Linux 系统执行此操作(在 /usr/src/usr/local 上),因为我希望它们与 /home/ 位于同一个备份文件系统中

关于linux - 在 Linux 中使用符号链接(symbolic link)将文件从一个位置 move 到另一个位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25468581/

相关文章:

c++ - 如何将 UTF-8 文本转换为用于 SFML 的 wstring?

linux - bash - 将命令与文件进行比较(特定的)

linux - 如何在bash中将每行的第一个字母大写?

android - 无法从 Ubuntu 18.10 访问 Redmi Note 5 Pro

c++ - 默认 move 赋值调用析构函数,复制赋值不调用

linux - ssh到另一台主机,运行涉及其他脚本的脚本,如何仅杀死其他脚本?

php - 为什么我不能将 LOAD DATA LOCAL 与 PDO 一起使用,即使我可以从 cli 客户端使用?

mysql - Ubuntu 20.04 服务器(AWS EC2)上基于 Docker + MySQL 8.0.26 的项目的 lower_case_table_names 错误

java - move C++ 内存而不复制

python - move 文件和目录,即使它们已经存在于目标中