我连接到Samba 驱动器在终端 (Linux) 中通过smbclient
。当我通过命令 列出目录时ls
,我会为每个条目 (文件或文件夹) 获得一些字母:例如D
、H
、R
、S
,A
以不同的组合DHR
、DHS
、DR
, 等等。
举个例子
smb:> ls
Start Menu DHS 0 Mon Oct 5 16:08:57 2020
Saved Games DR 0 Mon Oct 5 16:55:45 2020
Sti_Trace.log A 0 Thu Oct 31 11:08:40 2019
Materials D 0 Fri Mar 15 12:15:58 2019
Mydoc.docx A 15047 Fri Jan 13 12:42:42 2017
ntuser.ini HS 20 Mon Oct 5 16:55:37 2020
我已经意识到这A
是用于文件和D
目录的,但其他含义我猜不出来。你能给我提供这些字母含义的参考吗?我搜索了一段时间却没有结果,当我输入时,help ls
我得到了一个非常简洁的答案 :-\
smb: \> help ls
HELP ls:
<mask> list the contents of the current directory
提前致谢!
答案1
此列直接对应于标准 Windows 文件属性(又名 DOS 属性或 FAT 属性),如 Windows 和 MS-DOS 中所示属性命令。其中大部分命令也可在 Windows“文件属性”对话框中看到。
主要属性是“存档”、“目录”、“只读”、“隐藏”、“系统”:
A
(档案) 仅由备份程序(包括 xcopy/robocopy)使用。此类工具在进行复制时会将其清除,并且每当文件发生更改时,操作系统都会自动重新设置它,从而避免了比较修改时间的需要。D
(目录)不可改变,仅表示该条目是一个目录。R
(只读)使文件变为只读。对于目录,它不会在操作系统级别执行任何操作,但是指示 Windows 资源管理器该目录可能具有自定义图标或其他设置(即表示 Explorer 应该读取 desk.ini 文件)。
H
(隐藏)将文件从常规列表中隐藏;Windows 使用此属性而不是“点”文件。显然 smbclient 并不关心。S
(系统)稍微隐藏了文件,并导致 Windows 资源管理器在对文件执行任何操作之前发出警告。显然它还用于指示对于 Windows 9x 和 MS-DOS,文件不应被物理移动。(对于目录,它类似于 +R。)
(NTFS 上的文件可以有还有不少属性,但大多数属性不会通过 SMB 文件共享公开 - 只能通过本地使用 ATTRIB 命令或相应的 API 来访问它们。)