在mkdir之后,在创建的文件夹中没有生成文件

时间:2018-06-07 09:40:14

标签: tcl

mkdir 之后,未在创建的文件夹中生成文件

set curdir [file dir [info script]];
puts "path $curdir "
catch {cd $curdir}

set odir [file mkdir $curdir/OPFiles];

set OPDir [file dirname [ puts "$odir"]]
puts "path-- $OutPutDir"


set Summary [file join "$OPDir" Sum.txt];
puts "path-- $Summary"

set ECount [file join "$OutPutDir" EC.txt]
puts "path-- $ECount"

1 个答案:

答案 0 :(得分:2)

file mkdir命令生成目录,而不是文件。 file join生成文件路径名,但实际上并不生成文件。要创建文件,您需要open进行编写(最后再次close)。

set curdir [file dirname [info script]]
set odir [file join $curdir OPFiles]

file mkdir $odir

set Summary [file join $odir Sum.txt]

set handle [open $Summary "w"]
puts $handle "this would be some summary text..."
close $handle

此外,file mkdirputs的结果始终为空字符串(如果没有错误)。你可能不想使用它们。根据我的经验,cd通常最好避免使用脚本,尤其是,如果您希望它们完全可重用,因为它会改变所有的绝对含义相对文件名。