我可以从 Tcl 中的文件句柄中找到文件名吗?

2024-01-21

如同我可以从 Perl 中的文件句柄中找到文件名吗? https://stackoverflow.com/questions/2813092/can-i-find-a-filename-from-a-filehandle-in-perl但在 Tcl 中。

无论如何,我计划缓存文件名-文件句柄关联,所以我纯粹出于好奇而问——特别是链接中提到的“操作系统魔法”。 Tcl里可以吗?

如果重要的话,我(被迫)在 SunOS 5.10 上使用 Tcl 8.0.5。


对于这么旧的 Tcl 版本,您确实没有那么多选择。最简单的是做一点包装open and close:

rename open _original_open
rename close _original_close

proc open {filename args} {
    global fileForChannel
    set channel [eval [list _original_open $filename] $args]
    set fileForChannel($channel) $filename
    return $channel
}
proc close {channel} {
    global fileForChannel
    catch {unset fileForChannel($channel)}
    _original_close $channel
}

然后,您可以获得开放通道的文件名$ch仅仅通过阅读$fileForChannel($ch).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我可以从 Tcl 中的文件句柄中找到文件名吗? 的相关文章

  • 在 Java 中将字符串复制到文件的开头

    我想将一个字符串写入文件的开头 我该怎么做 我根本不知道如何添加字符串 这就是我到目前为止所做的 public static void prepend String filename String data throws IOExcepti
  • 使用 .NET 删除目录中超过 3 个月的文件

    我想知道 使用 C 如何删除某个目录中超过 3 个月的文件 但我想日期期限可以很灵活 需要明确的是 我正在查找超过 90 天的文件 换句话说 应保留 90 天前创建的文件 并删除所有其他文件 像这样的事情不能做 using System I
  • 是否可以合理地解决防病毒扫描工作目录的问题?

    我的 Win32 应用程序在运行时在指定的临时文件夹中执行大量磁盘操作 并且认真地重新设计它是不可能的 某些客户端具有扫描同一临时目录的防病毒软件 它只是扫描所有内容 我们试图说服他们禁用它 它不起作用 所以它也是不可能的 每隔一段时间 例
  • Ruby MRI 1.8.7 - 文件写入线程安全

    在我看来 在 Ruby MRI 1 8 7 中写入文件是完全线程安全的 示例 1 完美的结果 File open test txt a f threads 1 000 000 times do n threads lt lt Thread
  • 带 Expect 的 Telnet 自动化:身份验证速度慢?

    我正在使用 Telnet 向 Mikrotik 路由器发送命令 telnet 192 168 100 100 l admin Password pass1234 admin ZYMMA gt interface pppoe server r
  • 通过文件名通配符打开文件

    我有一个文本文件目录 所有文件的扩展名都是 txt 我的目标是打印文本文件的内容 我希望能够使用通配符 txt指定我希望打开的文件名 我正在思考类似的事情F text txt 分割文本文件的行 然后打印输出 这是我想做的一个例子 但我希望能
  • 如何突出显示2个html文件之间的差异

    我的网络应用程序有职位描述 某些用户可以修改这些职位描述 每次修改都会产生新版本的职位描述 职位描述的内容由用户使用tinymce 编辑器直接在textarea 中以html 形式进行编辑 我希望能够向用户展示内容从一个版本到另一个版本所做
  • 在批处理文件中添加 +1 到日期

    我有一个批处理文件 可以很好地创建今天的日期 现在我需要更新它以显示明天的日期 任何帮助深表感谢 echo off set TimeStamp 12 00 00 FOR F TOKENS 1 DELIMS A IN DATE T DO SE
  • Uri.parse("文件://" + ???);访问特定文件夹

    我的问题分为两部分 如何获取以下代码来访问此位置 存储 模拟 0 电影 特定文件夹 Code private Uri getUriFromMediaStore int position int dataIndex mMediaStoreCu
  • 为什么Environment.getExternalStoragePublicDirectory在某些设备(自2011年初专门制造)中不起作用?

    我试图将从相机捕获的图像存储到公共存储目录 这是我用于存储图像的代码部分 protected File createImageFile throws IOException Create an image file name String
  • Java从一个文件夹中搜索文件名

    我正在学习Java 我不太确定搜索文件的方法 我想构建返回文件名的函数 文件名应以star并结束于 txt 例如 在该文件夹中我们有 Java 源文件和一些文件 例如 文件 1 txt 2 txt 4 txt 开始 txt 星星 txt 启
  • 系统找不到java中指定的文件

    我正在制作一个打开和读取文件的程序 这是我的代码 import java io public class FileRead public static void main String args try File file new File
  • 重命名从 HTML5 画布创建的图像

    我制作了一个简单的画布并将其另存为图像 我在这段代码的帮助下做到了这一点 var canvas document getElementById mycanvas var img canvas toDataURL image png 并弹出创
  • getExternalCacheDir() 在 Android 上如何工作?

    据我了解 我们将经常访问的对象缓存在比普通磁盘读取更容易访问的内存段中 getExternalCacheDir 相对于getCacheDir 指向外部文件系统 在我看来这是正常的getExternalFilesDir Android 如何优
  • 如何在不加载到内存的情况下对大型 csv 文件进行排序

    我有 20GB csv 文件 如下所示 CallId MessageNo Information Number 1000 1 a 2 99 2 bs 3 1000 3 g 4 66 2 a 3 20 16 3 b 1000 7 c 4 99
  • 使用 Expect 自动化 xterm

    我正在尝试自动化xterm窗口使用Expect 虽然我已经知道Expect无法控制此类 GUI 应用程序 但有一个调整机制解释于探索期待 http shop oreilly com product 9781565920903 do pack
  • 同步写入使用 FILE_FLAG_OVERLAPPED 打开的文件

    我已经使用打开了一个文件 HANDLE handle CreateFileW fileName GENERIC READ GENERIC WRITE 0 NULL OPEN EXISTING FILE FLAG OVERLAPPED NUL
  • Android Webview:无法调用确定的可见性() - 从未见过 pid 的连接

    我有一个 Android Webview 当我单击链接下载文件 pdf 图像等 时 我收到一条错误消息 Error message Cannot call determinedVisibility never saw a connectio
  • 回形针不支持 .doc 文件

    在 Rails 4 0 2 中 我使用回形针 gem 上传文件 但它不支持 doc 文件 在文件上传字段下方 显示一条错误消息 扩展名与其内容不匹配 在模型中 检查内容类型的验证如下 validates attachment content
  • JavaFX ImageView 未更新

    因此 我尝试将图像加载并保存到 imageView 中 其中图像的位置是通过文件浏览器选择的 我已经为此工作好几天了 如果我不能解决这个问题 我就会中风 我已经尝试了我能想到的一切 预先感谢您的帮助 UPDATED 这是我的主要课程 pub

随机推荐

  • 单击 LinkBut​​ton 上的动态文本框

    我通过单击 LinkBut ton 在页面中创建动态文本框 但是 之后 如果提交页面 我找不到动态创建的项目 因此无法将信息发送到数据库 protected void lbAddTag Click object sender EventAr
  • JQGrid 获取特定列的所有值,而不考虑分页

    我正在使用 json 从数据库中提取数据 如何获取特定列的所有值 我想获取 PrimarySkill 列的所有值 全套值 无论分页如何 var texts listTableSupply jqGrid getCol PrimarySkill
  • 如何从 C# 更改 PowerPoint 中 TextRange 的字体颜色?

    我使用 C 创建了一个 PowerPoint 演示文稿 PowerPoint Application powerpointApplication PowerPoint Presentation pptPresentation PowerPo
  • Junit 与 new Date()

    当我有以下方法时 junit 测试会是什么 Override public void saveLastSuccesfullLogin final User user gebruiker setLastLogin new Date store
  • 在网页上,如何为特定部分设置滚动条?

    在获得的背面这个问题 https stackoverflow com questions 21159136 on a web page how can i create a horizontal scroll instead of havi
  • 如何使用 javascript 显示 PNG 图像的动画图像? [ 如 Gmail ]

    First of all check out this image Gmail uses this image to display the animated emoticon How can we show such animation
  • 启动应用程序的第二个实例的小部件

    当我点击小部件时 我在从小部件启动应用程序时遇到问题 这是一些代码的剪辑 Create an Intent to launch activity Intent intent new Intent context Entry MainTabV
  • 如何在Python中使用正则表达式排除特定字符串?

    我想匹配如下字符串 45 meters 45 meters 45 45 但不是像这样的字符串 45 meters you 45 you 45 and you 在这两种情况下 问号都必须位于末尾 所以 本质上我想排除所有包含 you 这个词的
  • 如何在构造函数中初始化 Objective-C 结构体?

    我在 Objective C 上使用一个结构来存储一些数据 如下所示 interface Interface NSObject my Data struct Data unsafe unretained BOOL isInit unsafe
  • 真正的 CTE 递归?

    我今天下午刚刚发现了 CTE 在享受了 2 个小时之后 我意识到它们并没有像我们在任何其他语言中学到的那样执行常见的递归 我的意思是 我总是将递归视为树搜索 所以我原以为 CTE 会一路下降到它发现的第一片叶子 但没有 他的工作是分层进行的
  • Power Query 列名称作为参数

    亲爱的巫师们 我正在尝试创建一个可以使用输入的搜索功能 1 搜索表 2 该表中将运行搜索的列 3 在2指定的列中搜索的值 该函数如下所示 mTbl as table mColName as text mColValue as text gt
  • 如何在 RDBMS 中表示预定事件?

    我必须存储可以每周 每天或每月组织的预定活动 例如上课时间 例如 事件可以在每周一和周三或每月的第二个周四发生 有没有办法将这些信息存储在遵循 3NF 的 RDBMS 中 编辑 这不是家庭作业 我正在和一个朋友一起构建一些东西来启发我们自己
  • MVC 提交带有部分视图的表单

    抱歉 如果之前已经回答过这个问题 我找不到任何与我的问题相符的内容 我有一个视图 其中包含一个部分视图 并且在提交视图时 部分视图中的数据不会发送到控制器 我知道如果我使用编辑器模板 这应该可以工作 但我无法使用它 因为我需要来自部分内部主
  • 如何从列表中显示 ng-templates

    我有一个AppComponent其中包含一个列表ShapeComponents 我实现了一些扩展的组件ShapeComponent like LineComponent CircleComponent RectangleComponent
  • 序列化时仅使用@JsonIgnore,反序列化时不使用@JsonIgnore

    我有一个与服务器发送和接收的用户对象 当我发送用户对象时 我不想将哈希密码发送给客户端 所以 我添加了 JsonIgnore在密码属性上 但这也阻止了它被反序列化为密码 这使得当用户没有密码时很难注册用户 我怎样才能只得到 JsonIgno
  • urllib2 SSL3_CHECK_CERT_AND_ALGORITHM:dh 密钥太小

    尝试使用发送 SOAP 请求suds 我在用着Python 2 7 6 我不太熟悉安全性 我相信我的机器或服务器机器上的安全密钥太小 我不知道如何解决 我是否生成一些新密钥并创建自定义开启器 任何帮助 指导都会有帮助 堆栈跟踪 Traceb
  • TFS 尽管构建是绿色的,但并非所有测试都运行

    由于某种原因 我们大约四分之一的测试没有在 TFS 上运行 构建最终显示为绿色 但仅报告 3 4 表示所有测试均已通过 我猜问题出在一些经过测试的异步代码中 这些代码可能会导致测试运行程序崩溃或继续自行运行 在 VS 本地 所有测试都顺利通
  • 用 Cpp 或其他快速语言反转大型哈希表

    我正在寻找高效的 C 或其他快速 来反转一个巨大的哈希表 哈希键的数量约为200 000 000个 每个哈希键中可能的元素数量约为 100 000 个 我想知道 有效地 反转此类表的好方法是什么 这样现在元素就是键 键就是元素 现在 我将硬
  • Android - 获取对 SD 卡上任何文件路径具有写访问权限的 DocumentFile(已获得 SD 卡权限)

    在我的应用程序中 我使用以下意图获得 SD 卡写入权限 如果用户从系统文件资源管理器中选择 SD 卡文件夹 则我具有 SD 卡写入权限 Intent intent new Intent Intent ACTION OPEN DOCUMENT
  • 我可以从 Tcl 中的文件句柄中找到文件名吗?

    如同我可以从 Perl 中的文件句柄中找到文件名吗 https stackoverflow com questions 2813092 can i find a filename from a filehandle in perl但在 Tc