我正在寻找一种从 Ubuntu 上的命令行启动终端会话的方法,如下所示:
#/usr/bin/env bash
terminal -c 'node server.js'
如果有一些跨平台工具也可以在 MacOS 上运行,那就太好了。
所以我尝试了这个:
gnome-terminal -- 'echo "foo" | bash'
我得到了这个:
当我尝试这个时:
gnome-terminal --tab -- echo 'ts-node /home/oleg/codes/typeaware/doc-gen/lang/typescript/api/src/.test/express.test.ts' | bash
什么也没有发生,gnome-terminal 从未打开。
答案1
您的初始命令gnome-terminal -- 'echo "foo" | bash'
尝试运行一个名为 的程序echo␣"foo"␣|␣bash
,但您的系统上很可能没有该程序。
正确的语法应该是gnome-terminal -- sh -c 'echo "foo" | bash'
,但这没有用,除非你真的有一个名为 的可执行文件foo
。你可以尝试以下方法查看语法是否正确:
gnome-terminal -- sh -c 'echo "date; sleep 2" | bash'
但这只是一种非常复杂的说法
gnome-terminal -- bash -c 'date; sleep 2'
至于预期的命令,可能应该是
gnome-terminal --tab -- bash -c 'ts-node /home/oleg/codes/typeaware/doc-gen/lang/typescript/api/src/.test/express.test.ts'