我正在尝试在 bash 中将变量传递给 rollup.js。\n我不\xe2\x80\x99t 不知道这是 bash 问题,还是 rollup.js 的问题,因为我在 bash 方面没有那么丰富的经验。但也许有人可以帮助我\xe2\x80\xa6
\n\n这是我的终端输入:
\n\nMY_INPUT="/path to my/input.js"\nMY_OUTPUT="/path to my/output.js"\nrollup --input $MY_INPUT --output $MY_OUTPUT\nRun Code Online (Sandbox Code Playgroud)\n\nRollup 抛出错误:
\n\n\n\n\nrollup 一次只能捆绑一个文件
\n
我将问题追溯到路径内的空白处。
\n\n然而,这两种方法都有效:
\n\nrollup --input "/path to my/input.js" --output "/path to my/output.js"\nrollup --input /path\\ to\\ my/input.js --output /path\\ to\\ my/output.js\nRun Code Online (Sandbox Code Playgroud)\n\n仅当我使用变量时才会出现此问题。\n我还尝试转义变量而不是将其放在括号中,但这也不起作用。
\n\n有没有办法让变量像我想要的那样运行,这是 rollup.js 必须处理的问题,还是根本不可能使用其中包含空格的路径作为变量的参数?
\n您需要在将变量传递给时引用它们rollup:
rollup --input "$MY_INPUT" --ouput "$MY_OUTPUT"
Run Code Online (Sandbox Code Playgroud)
这是因为这些变量包含空格,shell 将其解释为多个参数。通过使用双引号引起来,这些值将被解释为单个字符串。
请注意,如果您将 Bash 脚本复制粘贴到http://www.shellcheck.net/#上,它可以指出此类问题。
| 归档时间: |
|
| 查看次数: |
1404 次 |
| 最近记录: |