"Plant" Bash 脚本到 tcl 脚本
"Plant" Bash Scripts into a tcl Script
我有一个 main tcl 脚本,它调用多个 bash 脚本。但我想把所有东西都放在一个地方。有没有办法直接在 tcl 脚本中实现我的 bash 脚本(作为 procs?)并以某种方式将它们标记为 bash 脚本?当然,你不能只是将它们放在 procs 中而不对它们进行任何更改。
另一件必须注意的事情:一些 bash 脚本需要作为 su 访问,如何实现?
我不是在寻找这样的东西:
How to call bash commands from tcl script? - 我只想将我的 bash 脚本作为 "isolated" 程序。
将 bash 脚本放入正确引用的字符串中,然后将其传递给 bash:
proc do_bash_script {} {
set bash_script {
echo $HOME
getent passwd $USER
}
exec bash << $bash_script
}
do_bash_script
产出
/home/jackman
jackman:x:1001:1001:Glenn Jackman:/home/jackman:/usr/local/bin/fish
我有一个 main tcl 脚本,它调用多个 bash 脚本。但我想把所有东西都放在一个地方。有没有办法直接在 tcl 脚本中实现我的 bash 脚本(作为 procs?)并以某种方式将它们标记为 bash 脚本?当然,你不能只是将它们放在 procs 中而不对它们进行任何更改。
另一件必须注意的事情:一些 bash 脚本需要作为 su 访问,如何实现?
我不是在寻找这样的东西: How to call bash commands from tcl script? - 我只想将我的 bash 脚本作为 "isolated" 程序。
将 bash 脚本放入正确引用的字符串中,然后将其传递给 bash:
proc do_bash_script {} {
set bash_script {
echo $HOME
getent passwd $USER
}
exec bash << $bash_script
}
do_bash_script
产出
/home/jackman
jackman:x:1001:1001:Glenn Jackman:/home/jackman:/usr/local/bin/fish