将目录转换为文件或将文件转换为目录

Ion*_*zău 20 linux bash directory files

我想创建一个名为test. 不小心我跑mkdir test而不是touch test.

是否可以test在名为的文件中转换目录test

将命名的文件转换为同名test的目录怎么样?

Bru*_*ger 14

这对于我接触过的任何 Unix 或 Linux 都是不可能的。

在一些较旧的 Unix 下,目录是文件,特别标记,但仍然是文件。例如,您曾经可以cat在 SunOS 下读取目录。许多现代文件系统可能将目录作为 B+ 树或其他一些磁盘数据结构。因此,将文件转换为目录(反之亦然)总是需要删除和重新创建同名的文件。


ter*_*don 6

不,没有这样的命令,因为它绝对没有意义。您的问题就像是在寻求一种将盒子转换为平面矩形的方法。你会如何处理盒子(目录)中的东西?矩形如何对应它来自的盒子?

文件和目录提供完全不同的功能。虽然目录确实是*nix 系统中的文件,但它仅适用于系统的内部结构,而不适用于您(用户)所看到的内容。因此,将文件转换为目录,反之亦然,将始终涉及删除文件和创建目录。您所能希望的最好的方法是使用相同的 inode,但同样,这没什么意义。

  • 说没有意义是你的观点,而不是技术事实。 (3认同)