如何使变量唯一

发布于 2024-10-02 18:12:40 字数 221 浏览 1 评论 0原文

如何使变量在 TCL 中唯一?

示例:

exec echo $msgBody - /tmp/Alert_Notify_Work.$$
exec cat /home/hci/Alert.txt -- /tmp/Alert_Notify_Work.$$

这不起作用;我试图使变量 Alert_Notify_Work 唯一。

How do I make a variable unique in TCL?

Example:

exec echo $msgBody - /tmp/Alert_Notify_Work.$
exec cat /home/hci/Alert.txt -- /tmp/Alert_Notify_Work.$

This does not work; I am trying to make the variable Alert_Notify_Work unique.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

乞讨 2024-10-09 18:12:40

为此,最好使用预先存在的库。 Tcllib 有一个实现临时文件的 fileutil 包:

set filename [fileutil::tempfile Alert_Notify_Work.]

It's best to use a pre-existing library for this. Tcllib has a fileutil package that implements tempfiles:

set filename [fileutil::tempfile Alert_Notify_Work.]
甜柠檬 2024-10-09 18:12:40

$$ 不是有效的 Tcl 语法,Tcl 将在 shell 看到它之前解析该行。但是有一个 Tcl 命令可以检索 pid:pid。我通常依靠当前时间和 pid 来确保唯一性。

我假设 msgBody 是一个 Tcl 变量,命令中的 --- 应该是 > 和分别是>>

选项 1

set filename /tmp/Alert_Notify_Work.[clock seconds].[pid]
exec echo $msgBody > $filename
exec cat /home/hci/Alert.txt >> $filename

或者,Tcl 只需要多几行:

set f_out [open /tmp/Alert_Notify_Work.[clock seconds].[pid] w]
puts $f_out $msgBody
set f_in  [open /home/hci/Alert.txt r]
fcopy $f_in $f_out
close $f_in
close $f_out

$$ is not valid Tcl syntax, and Tcl will parse that line before the shell sees it. But there is a Tcl command to retrieve the pid: pid. I usually rely on the current time and the pid for uniqueness.

I assume msgBody is a Tcl variable, and the - and -- in your commands should be > and >> respectively.

option 1

set filename /tmp/Alert_Notify_Work.[clock seconds].[pid]
exec echo $msgBody > $filename
exec cat /home/hci/Alert.txt >> $filename

or, Tcl only with just a few more lines:

set f_out [open /tmp/Alert_Notify_Work.[clock seconds].[pid] w]
puts $f_out $msgBody
set f_in  [open /home/hci/Alert.txt r]
fcopy $f_in $f_out
close $f_in
close $f_out
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文