File io 在tcl中递归复制目录

File io 在tcl中递归复制目录,file-io,tcl,File Io,Tcl,当我尝试将一个目录递归复制到另一个目录时,我收到一条错误消息。若foo是我的源目录,bar是我的目标目录,那个么我得到的错误是 "can't overwrite file "bar/foo" with directory "foo" 我哪里出错了?您可以使用exec: exec cp -f ./foo bar 它总是对我有用。对我很有用。你确定foo不是一个偶然的文件,比如一个符号链接吗?我遇到这个错误的唯一方法是当bar实际上是一个文件,或者是一个链接(硬的或符号的)。我得到了这个错误:不能

当我尝试将一个目录递归复制到另一个目录时,我收到一条错误消息。若foo是我的源目录,bar是我的目标目录,那个么我得到的错误是

"can't overwrite file "bar/foo" with directory "foo" 我哪里出错了?

您可以使用exec:

exec cp -f ./foo bar

它总是对我有用。

对我很有用。你确定
foo
不是一个偶然的文件,比如一个符号链接吗?我遇到这个错误的唯一方法是当bar实际上是一个文件,或者是一个链接(硬的或符号的)。我得到了这个错误:不能用目录“foo”覆盖文件“bar/foo”。我猜你是在某种程度上复制东西到它们自己。这可能是完全错误的;别这么做,你到底犯了什么错误<代码>无法用目录“bar”覆盖文件“foo”或
无法用目录“foo”覆盖文件“bar/foo”“
?第二个事实上告诉您,在
条中有
foo
。不要忘记使用
-r
标志来获取递归副本。我刚才在tcl上也遇到了同样的问题,你的简单方法就是有效的方法。只有tcl版本会更好。
exec cp -f ./foo bar