我正在尝试运行一个脚本,它启动一个WSL(Ubuntu1804)终端,然后在该终端中运行一个bash脚本。
.\ubuntu1804.exe;
cd test_directory;
node server.js;
然而,在第一个命令之后,终端打开了,但是其他两个命令没有被执行。
.\ubuntu1804.exe;
cd test_directory;
node server.js;
然而,在第一个命令之后,终端打开了,但是其他两个命令没有被执行。
.\ubuntu1804.exe
单独打开一个交互式 shell,由 PowerShell 同步执行。
也就是说,在你提交 exit
以终止该交互式 shell 之前,控制权不会返回给 PowerShell,因此后续的命令 - cd test_directory
和 note server.js
- 不仅没有被发送到 .\ubuntu1804.exe
,正如你打算的那样,而且随后由 PowerShell 运行。
相反,你必须通过 run
子命令将要运行的命令传递给 .\ubuntu1804.exe
:
.\ubuntu1804.exe run 'cd test_directory; node server.js'
node
退出,控制权将返回到PowerShell。