节点命令不工作在Windows上的git bashterminal

我试图在我的git bashterminal中运行node命令。 当我运行node命令时,按Enter键时什么都不会发生。 $会消失,只会在下一行没有>的情况下闪烁光标。

 My-PC MINGW32 / $ node -v v4.5.0 My-PC MINGW32 / $ where node C:\Program Files\nodejs\node.exe My-PC MINGW32 / $ node _ 

有人能告诉我这个问题可能是什么?

谢谢!!

如果在进入“节点”之后没有用>换行,这可能是因为新版本的Git Bash不能在以前的TTY模式下运行。 在这里讨论 。 你可以通过输入

 node -p -e "Boolean(process.stdout.isTTY)" 

如果这返回false – 那么节点REPL(和一些其他控制台工具)将无法正常工作。

有几个解决方法:

解决方法A

 winpty node 

或者你可以在.bash_profile中添加一个别名:

 alias node="winpty node" # and for npm CLI/scripts: alias npm="winpty npm.cmd" 

解决方法B

使用以下目标创建一个新的Git Bash快捷方式:

 "C:\Program Files\Git\git-cmd.exe" --no-cd --command=usr/bin/bash.exe -l -i 

并使用它来代替默认的Git Bash。

如果您自己输入node ,则会输入REPL 。 输入一些JavaScript,它将被执行。 在一行中使用.exit离开REPL并返回到你的shell。

如果你想用Node.js运行一个程序,把一些JavaScript文件作为参数传递给文件名。 例如,如果您有一个名为foo.js的文件, foo.js要运行某个JavaScript,请输入node foo.js

你也可以通过使用-e标志让Node.js在命令行上运行JavaScript。 例如(从Node.js构建文档 ):

 node -e "console.log('Hello from Node.js ' + process.version)"