我正在Linux环境中运行一个用tcl编写的流,它执行外部可执行文件。其中一个可执行文件在运行过程中创建了新窗口,这些窗口会弹出几秒钟,然后被销毁。这些窗口中提供的信息是不需要的,但当流在后台运行时,它们很烦人,会干扰正常工作。使用exec
:调用可执行文件
set cmd "exec $KITE(SI_Exe)/run_SI_01_fast_touchstone.sh $KITE(MCRroot) $KITE(SI_config_file_name) "
puts "Running $cmd "
eval $cmd
有没有一种方法可以抑制这些窗口的弹出,类似于将程序的输出引导到/dev/null
的方法?
如果您在linux系统上,这意味着您很可能正在运行X11。如果这是真的,并且它是一个足够现代的版本,那么可以创建一个虚拟帧缓冲区(xvfb),然后设置环境变量DISPLAY以将其用于显示。这在道义上等同于/dev/null。