Linux mv 命令将数据移动到了未知位置?

Linux mv 命令将数据移动到了未知位置?

我在 SSH 中意外执行了这个命令:

mv /var/www/vhosts/website/httpdocs/magento/*

现在 magento 目录中的所有数据都消失了。有人知道它移到哪里了吗?

谢谢!

答案1

如果此目录中按字母顺序排列的最后一个条目本身就是一个目录,那么它们就在那里。

假设您有文件abc以及目录d。在本例中,

mv /var/www/vhosts/website/httpdocs/magento/*

扩展为

mv /var/www/vhosts/website/httpdocs/magento/a /var/www/vhosts/website/httpdocs/magento/b /var/www/vhosts/website/httpdocs/magento/c /var/www/vhosts/website/httpdocs/magento/d

这是将所有内容移至 的命令d。查看那里是否有任何内容。

如果d不是目录,mv就应该抱怨这一点。

答案2

延伸一下glglgl的回复:

在类 Unix 操作系统中,命令行通配符扩展由 shell 执行。在 Linux 中,大多数情况下是bash。其手册页明确指出,通配符扩展将按字母顺序排序。对于大多数兼容 Bourne 的 shell 来说,这应该同样有效。

相关内容