Linux 如何更改tcl中目录文件的状态?

Linux 如何更改tcl中目录文件的状态?,linux,tcl,Linux,Tcl,问题是,我被指派去做一个tcl脚本,它可以改变目录文件的状态。我使用file stat*name*array命令来显示索引节点,如下所示: file stat $f arr if { $g eq "size" } { puts "size: $arr(size)" } if { $g eq "inode" } { puts "inode: $arr(ino)" } if { $g eq "type" } { puts "type: $arr(type)" } 我应该用什么来改

问题是,我被指派去做一个tcl脚本,它可以改变目录文件的状态。我使用
file stat*name*array
命令来显示索引节点,如下所示:

file stat $f arr

if { $g eq "size" } { 
  puts "size: $arr(size)"
}
if { $g eq "inode" } {
  puts "inode: $arr(ino)"
}
if { $g eq "type" } {
  puts "type: $arr(type)"
}


我应该用什么来改变它?现在我所能做的就是访问并显示它。

操作系统
stat
结构中的所有内容(真正包装的
file stat
文件)不是可以由用户代码修改的。有些东西完全由操作系统管理,在创建“文件”时设置,以后不能更改。例如,您不能更改
类型
文件
不是
目录
套接字
或…并且设备和inode编号实际上是文件的唯一标识符,与文件名无关,永远不会更改

可以设置
atime
mtime
字段(通过
文件atime
文件mtime
)以及通过
文件属性设置权限位。所有权字段理论上是可以设置的(也可以通过
文件属性
),但您可能没有这样做的权限,
链接
计数可以通过创建硬链接(使用
文件链接
)或删除它们(
文件删除
)进行设置


大小
仅反映文件中的字节数:不要将其设置为写入文件。

这个问题似乎与主题无关,因为它没有显示任何研究成果。你到底在寻找什么?“更改目录状态”是什么意思?您更改后应该有什么不同?感谢您的回复,解释一下,我已经阅读了有关文件atime?名称?时间?,如果指定了时间,则是要为文件设置的访问时间。然后我试着用它为文件分配新的访问时间,但什么也没发生。mtime也会发生同样的情况。我尝试了这些方法来更改目录或文件状态中的某些索引节点。我希望你能理解我想说的话。谢谢你。@keemoosu好的,这更清楚了。您是否使用了
文件atime$f time
其中
time
是POSIX格式的时间?在再次运行
文件atime$f time
以检查
atime
的更新值后,您还将重新运行
文件stat$f arr
,对吗?对@Jerry我使用的是POSIX格式,但当我重新运行整个脚本时,会显示相同的访问时间。运行脚本一次后应该更改访问时间,对吗?谢谢@Donal Fellows我真的很努力地搜索了这些信息,很高兴您能立即回复。谢谢分享你的知识!