我是TCL脚本和shell脚本的新手.我想从shell脚本调用TCL脚本.我试过如下.
#!/bin/sh
for i in {1..5}
do
my_script
test_script
done
Run Code Online (Sandbox Code Playgroud)
如果我运行脚本,它会抛出如下错误,
./sample.sh: line 5: my_script: command not found
./sample.sh: line 5: test_script: command not found
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮我解决这个问题吗?
提前致谢.
如果您尚未使脚本可执行(使用chmod +x),那么您需要使用:
tclsh my_script.tcl
Run Code Online (Sandbox Code Playgroud)
或者可能tclsh8.5 /path/to/script.tcl有很多变体。
如果您已使脚本可执行,请检查包含该脚本的目录是否在您的目录中PATH(如果没有,请使用脚本的完整文件名或调整您的PATH),并且您是否有合适的#!行。通常推荐的一种是:
#!/usr/bin/env tclsh8.5
Run Code Online (Sandbox Code Playgroud)
因为这将在您的路径中搜索可执行文件,tclsh8.5而不是对其进行硬编码。
如果在您的$PATH身上找不到它们,您必须提供脚本的路径,例如:
./my_myscript # current directory
/path/to/test_script # absolute path
Run Code Online (Sandbox Code Playgroud)