`mv` 创建硬链接而不是移动或重命名文件或目录

`mv` 创建硬链接而不是移动或重命名文件或目录

我在移动和重命名目录和文件时遇到了非常奇怪的问题,mv我以前从未遇到过。最奇怪的是它发生在Ubuntu以及赛格威在 Windows 上。

mv尝试创建硬链接而不是实际移动或重命名文件或目录。

重命名目录的示例:

$ mkdir test
$ mv test test2
ln: ‘test’: hard link not allowed for directory

重命名文件的示例:

$ touch test
$ mv test test2
$ ll -i
131140 -rw-rw-r-- 2 user group    0 Nov 13 16:06 test
131140 -rw-rw-r-- 2 user group    0 Nov 13 16:06 test2

很明显mv刚刚创建了一个硬链接,因为两个文件具有相同的 inode 编号。

为什么会这样?

我还有另一个系统Debian并且mv在那里工作正常。是否可以在用户的​​点文件中的某个地方配置此行为?如果我切换到Ubuntumv运行良好。所以我怀疑某些用户的配置,因为我使用相同的点文件Linux以及赛格威

答案1

所以原因完全在我身上。我的点文件中有这个别名,它导致了奇怪的行为:alias mv='ln -i'

原因很简单:当我创建 的“安全”别名cp并使用参数mv时,我只是复制粘贴了以前的别名。对于别名,我更改了别名的内容,但没有更改其名称。它应该是,但最终变成了前面提到的。lninteractivelnln='ln -i'mv='ln -i'

我感到羞愧。抱歉问了个愚蠢的问题,我怀疑没有人会遇到同样的问题。

相关内容