在我们的 RHEL 7.6 服务器上,我们创建以下文件夹
# mkdir -p /var/data/data-logs_temp
第二部分是将所有内容移至以下 /var/data/
位置/var/data/data-logs_temp
:
# mv /var/data/* /var/data/data-logs_temp
但我们从命令中得到的输出mv
是:
mv: cannot move ‘/var/data/data-logs_temp’ to a sub directory of itself, ‘/var/data/data-logs_temp/data-logs_temp’
mv
关于这一点,命令是正确的。
但;是否可以告诉忽略这一点,因为我们需要命令mv
的退出代码?mv
0
或者也许有其他选项忽略移动其自身的子目录?
答案1
答案2
在更简单的 Unix/Linux 世界中,如果不调用扩展选项,人们会:
(a)mkdir data-logs_temp
在您拥有的与 位于同一文件系统中/var/data
且可由您写入的任何目录中,并且不在 的任何子树中/var/data
(/var
如果您具有写入权限,则可以接受)。
(b)cd /var/data
和mv * /wherever/data-logs_temp
,避免使用完整目录扩展所有通配名称。这不会复制数据,只会创建链接;并且它不会尝试将目录复制到自身中。
(C)mv /wherever/data-logs_temp /var/data
。这只移动一个链接,并保留树结构。