多行打印而不是单行打印

时间:2020-06-24 05:55:33

标签: tcl

我试图建立多个目录,还试图搜索并列出在特定路径中找到的所有文件。

proc filesearch {indir1 indir2 indir3 indir4 indir5} {
    set infile1 [glob -nocomplain -type f $indir1$indir2/*txt*]
    puts $infile1
}

当我放置$infile1时,它将所有找到的文件放入1个长的单行中(如下所示)。如何将每个文件分成一行(放入$infile1中)。

上面的puts $infile1,将所有内容放在一行中

a/b/c/d/a.txt a/b/c/d/b.xt a/b/c/d/c.txt a/b/c/d/d.txt

如何将找到的每个文件分成多行?

a/b/c/d/a.txt
a/b/c/d/b.txt
a/b/c/d/c.txt
a/b/c/d/d.txt

将找到的所有文件打印到单独的行中。我看到的当前输出是在一行中用空格隔开列出所有文件。

2 个答案:

答案 0 :(得分:2)

您只需要遍历列表即可。

foreach elem $infile1 {
    puts $elem
}

参考: foreach

答案 1 :(得分:2)

只需使用换行符作为分隔符加入文件列表:

puts [join $infile1 \n]
相关问题