在不同的 shell 中执行命令

Ami*_*hum 2 unix shell

在我工作的地方,我们有一个命令,我们称之为kuku,当被调用时,它会将我转移到一个新的 shell。即,我得到:

old_shell> kuku
kuku> exit
old_shell> ...
Run Code Online (Sandbox Code Playgroud)

我需要在kukushell 中运行某个脚本,但我不想手动输入它和/或留在那里。即,我想使用类似的东西kuku; <do stuff>; exit;。但是,这将不起作用,因为一旦进入kuku,就无法访​​问其他命令。

有没有办法打开一个shell,给它一些命令,然后自动退出?

Fre*_*Foo 5

这在很大程度上取决于kuku工作方式。如果kuku或多或少与其他外壳兼容,那么kuku -c "cmd1; cmd2"应该可以工作。

另一种选择是将 for 的命令kuku放在一个文件中script.kuku,然后使用kuku < script.kuku.

最后,expect或者它的任何克隆都可以用来自动化几乎任何命令。