说我创建一个my-npx-hello-world回购
它具有以下文件
my-npx-hello-world/
foo.sh
index.sh
package.json
package.json具有
"bin": "./index.sh"
index.sh调用./foo.sh,即
#!/bin/sh
echo "running foo"
./foo.sh
现在,当我尝试运行此
# npx my-npx-hello-world
running foo
line 4: ./foo.sh: No such file or directory
那是因为它正在我的CWD中而不是在my-npx-hello-world存储库中寻找foo.sh。
我需要做什么,才能让index.sh在同一存储库中执行foo.sh脚本。
答案 0 :(得分:0)
回答了我自己的问题,我通过找到以下CWD解决了这个问题
BASEDIR=$(dirname "$0")/../lib/node_modules/my-npx-hello-worl
然后
cd $BASEDIR
./foo.sh