$ date > '< abcd'
$ cat '< abcd'
<something>
$ tclsh8.5
% exec cat {< abcd}
couldn't read file " abcd": no such file or directory
哎呦。这是由于'exec'的说明。如何将包含'<'的命令行参数传递给'exec'
如果arg(或args对)具有下面描述的形式之一,那么exec将使用它来控制子进程之间的输入和输出流。这些参数不会传递给子进程。在形式,如“<文件名”,文件名可以是从“<”或相同的参数中间没有空格”一个单独的参数。
是否有办法来解决此问题?
要关闭此循环,它似乎是'exec'的一个限制,它不能将以'<'开头的参数传递给下游程序。我修补了我的'exec'副本,要求重定向操作符是一个单独的单词。因此,cat
user188012