我只是好奇是否有一个标准的计算机术语包含目录中的所有内容,而不是总是不得不分别提及“文件”和“(子)目录/文件夹”。所以,你可以说,在所有的回路term
以s dir_1
。
编辑:为了清楚起见,我正在寻找一个单数术语,就像我的例句一样。
小智 52
该POSIXreaddir
文档使用这个词条目:
的READDIR()函数将返回一个指针表示在由参数指定的目录流中的当前位置的目录条目的结构dirp,并在下一个条目的目录流位置。到达目录流的末尾时,它将返回一个空指针。<dirent.h>头文件中定义的结构dirent描述了一个目录条目。
Kam*_*ski 43
文件。至少在符合 POSIX 的系统中是这样。
3.164 文件
可以写入或读取或两者兼有的对象。文件具有某些属性,包括访问权限和类型。文件类型包括常规文件、字符特殊文件、块特殊文件、FIFO 特殊文件、符号链接、套接字和目录。实现可能支持其他类型的文件。
(来源)
人们在说“文件”时只表示“常规文件”并不是真正符合 POSIX 标准。:)
您可以从这个问题的答案中了解 POSIX 是什么。各种操作系统是否符合 POSIX(完全或大部分)。不详述,此答案适用于 Unix 和类 Unix 系统(包括 macOS、Linux、BSD),但不适用于一般的 Windows 系列。
有提出文件和条目的好答案。(如果您不明白为什么这些词合适,请阅读它们,并记住在 POSIX 中“文件”包括所有类型的 inode(包括目录),而不仅仅是常规文件)。 目录条目(文件名)是对文件/inode 的引用。
一个文件在不同的目录中可以有多个名称(链接数 > 1)。实际的文件数据/inode 不存储在包含它的文件名的目录中。
但是理智的人说“读取某个目录中的文件”之类的事情是没有问题的。总是在文件(inode + 数据)和引用它的文件名/目录条目之间进行区分是不必要的迂腐。
另请注意,现代文件系统中的目录条目通常还存储“类型”字段,因此程序find
不需要stat(2)
每个文件来检查谓词find -type f
(常规文件)与符号链接等。或者在递归时查找目录本身的条目。请参阅检查目录。readdir 返回的条目是目录、链接或文件。dent->d_type 没有在 Stack Overflow 上显示类型。
“路径”类似于foo/bar
或是/a/b/foo/bar
以文件名结尾的字符串,但可以使用目录来引用不在当前目录中的文件名。 foo
是一个简单的路径,也是一个文件名。但是foo/bar
是文件名,也是路径。但是你可以争论它不是“文件名”的语义。路径或路径名的东西,你可以把信息传给系统调用像POSIXopen(2)
或chdir(2)
或Win32的OpenFile()
您选择的术语(文件、文件名和目录条目)可能取决于上下文和您在做什么。例如,读取内容或 inode 元数据涉及实际文件。
但是,仅根据名称匹配 glob 表达式根本不涉及文件,只涉及文件名/目录条目。
目录条目在实际循环类似 的函数时最合适readdir(3)
,或者例如“用于ln
创建引用此文件的新目录条目”。在处理硬链接时,术语“目录条目”与文件有区别,比“文件名”更重要。
但是“名称”也有效。例如“具有 2 个名称的文件”。
更多的时候,你会使用像c_files=( *.c )
. 或者fn
(对于文件名)也是一个很好的本地使用变量名。
使用起来entries=( *.c )
会感觉怪怪的。“条目”只在谈论循环遍历它们以获取文件名的过程时才感觉正确,而不是匹配某些过滤器的结果文件名集。
归档时间: |
|
查看次数: |
4824 次 |
最近记录: |