`cp -x` 有什么作用?

`cp -x` 有什么作用?

我知道在手册页中它是这么写的,-x, --one-file-system stay on this file system但是有人可以像我五岁一样向我解释一下吗?

答案1

cp -ax,rsync -xtar -one-file-system, 都相同。

就是不跨越的意思文件系统边界

文件系统之间的边界是挂载点

如果运行df -a,您将看到所有文件和挂载点。

为了帮助您理解,举个例子:

如果您df在文件系统:df /或 /usr 目录:上运行df /usr,您将看到它们安装在/您的安装分区上。但如果你在 /proc 上运行它,df /proc你会发现挂载点是不同的。

因此,如果您在文件系统上发出递归副本 cp -ax /,它不会复制 /proc 目录。

-v如果您想准确查看丢弃的内容和正在复制的内容,可以添加选项。

正如其他人指出的那样,它与递归一起使用,人们通常使用它进行备份。

你应该看到“跨越文件系统边界的意义”有关挂载点的更多信息。

答案2

cp如果您与递归一起使用,即与-ror一起使用-a,并且源位于安装点之上,那么这会有所不同。

例如:/data/job/encrypt是一个活动挂载点。

cp -a  /data/job /path/to/target # includes /data/job/encrypt
cp -ax /data/job /path/to/target # excludes /data/job/encrypt

答案3

根据我的理解,这意味着它只会复制当前正在运行的文件系统上的内容,而不是从可能存在的另一个文件系统中复制内容

例子。如果您在 /home/jkris/mnt/otherfs 下安装了另一个文件系统(另一个物理磁盘、USB 或远程文件系统),然后继续

cp -ax /home/jkris/ /mybackup/dir/

它不会从 ~/mnt/otherfs 复制任何内容

类似的问题和答案在这里:https://superuser.com/questions/307541/copy-entire-file-system-hierarchy-from-one-drive-to-another

答案4

要指定要复制的数据是可执行文件,我们使用此命令cp-X在USS主机部分。

我希望这有帮助。

相关内容