有人可以解释一下节点的全局安装行为.这让我很困惑.如果我安装一个包(带有可执行文件),例如http-server全局,我可以运行它:
http-server
Run Code Online (Sandbox Code Playgroud)
但如果我这样做
node http-server
Run Code Online (Sandbox Code Playgroud)
我明白了
module.js:339
throw err;
^
Error: Cannot find module '/path/to/current/dir/http-server'
at Function.Module._resolveFilename (module.js:337:15)
at Function.Module._load (module.js:287:25)
at Function.Module.runMain (module.js:457:10)
at startup (node.js:136:18)
at node.js:972:3
Run Code Online (Sandbox Code Playgroud)
我怀疑我的tern包装emacs是试图运行它node因此破坏.为什么会这样?为什么节点找不到自己模块的路径?
在linux中,有可能这样做:
git diff $(git status -s -b | sed -n '2p' | cut -d' ' -f2-)
Run Code Online (Sandbox Code Playgroud)
或者更简单的情况
ls $(pwd)
Run Code Online (Sandbox Code Playgroud)
问题是如何在Windows中实现相同的目标?(不使用批处理文件,在命令提示符中使用单行程序).并非所有命令都支持管道,那么我们如何评估一个并将结果作为参数传递给另一个?
我尝试过管道<,>但没有工作.
git diff < (git status -s -b | sed -n '2p' | cut -d' ' -f2-)
Run Code Online (Sandbox Code Playgroud)
自己尝试一下它需要一个文件.并且|不起作用,因为git diff不支持它
git status -s -b | sed -n '2p' | cut -d' ' -f2- | git diff // results in illegal seek
Run Code Online (Sandbox Code Playgroud)