ego*_*ulz 1 file-io tcl concatenation
我正在尝试将文件夹中的所有临时文件连接到单个文本文件中.但我一直在遇到错误:
if { [catch { exec cat /tmp/new_temp/* >> /tmp/full_temp.txt } msg] }
Run Code Online (Sandbox Code Playgroud)
错误信息:
-cat: /tmp/new_temp/*: No such file or directory
Run Code Online (Sandbox Code Playgroud)
如果我在tclsh上尝试相同的东西(没有catch和exec)它可以工作
为什么这么糟糕的做法?使用Tcl本身连接这些文件:
set out [open /tmp/full_temp.txt w]
fconfigure $out -translation binary
foreach fname [glob -nocomplain -type f "/tmp/new_temp/*"] {
set in [open $fname]
fconfigure $in -translation binary
fcopy $in $out
close $in
}
close $out
Run Code Online (Sandbox Code Playgroud)