为什么终端在.bat文件(WSL)中运行“bash”后停止,以及如何正确运行它?
我想自动化一个运行.bat文件但在WSL2中使用bash终端的进程。以下是我在.bat中的命令:为什么终端在.bat文件(WSL)中运行“bash”后停止,以及如何正确运行它?,bash,batch-file,windows-subsystem-for-linux,wsl-2,Bash,Batch File,Windows Subsystem For Linux,Wsl 2,我想自动化一个运行.bat文件但在WSL2中使用bash终端的进程。以下是我在.bat中的命令: bash cd ~/Dev/Folder nvm use 14.15.0 npm start 但是。蝙蝠在运行bash后停止。我还尝试使用bash&&cd~/Dev/Folder&&nvm使用14.15.0&&npmstart并用wsl替换bash,但结果相同 可能我做错了什么,所以我希望能得到一些帮助。bash启动一个新的bash shell并等待它退出,就像其他终端命令一样。后续命令不会重定向
bash
cd ~/Dev/Folder
nvm use 14.15.0
npm start
但是。蝙蝠在运行bash后停止。我还尝试使用bash&&cd~/Dev/Folder&&nvm使用14.15.0&&npmstart并用wsl替换bash,但结果相同
可能我做错了什么,所以我希望能得到一些帮助。bash启动一个新的bash shell并等待它退出,就像其他终端命令一样。后续命令不会重定向到Bash,它们将在Bash进程退出后执行
要在Bash中运行命令,请执行以下操作:
另请参见。bash启动一个新的bash shell并等待它退出,就像等待任何其他终端命令一样。后续命令不会重定向到Bash,它们将在Bash进程退出后执行
要在Bash中运行命令,请执行以下操作:
另请参见。几乎成功。它会转到目录并用ls显示文件,但在到达目录时会显示/bin/bash:nvm:command not found,当我删除nvm时,它与npm一样。这可能与PATH环境变量有关。您应该确保包含nvm和npm的路径位于path中。或者只是使用它们的完整路径来调用它们,比如/full/path/to/npm start。它会转到目录并用ls显示文件,但在到达目录时会显示/bin/bash:nvm:command not found,当我删除nvm时,它与npm一样。这可能与PATH环境变量有关。您应该确保包含nvm和npm的路径位于path中。或者使用它们的完整路径调用它们,比如/full/path/to/npm start。
bash -c "cd ~/Dev/Folder && ls && nvm use 14.15.0 && npm start"