我是bash脚本的新手,但我不理解为什么它不起作用
#!/bin/bash
foo=foobarfoobar
echo ${foo//bar/baz}
Run Code Online (Sandbox Code Playgroud)
第3行的错误替换错误
Chr*_*ris 51
这种替换在Bash 4.2.8中运行良好(根据文档看起来很好).
我最好的猜测是你实际上并没有使用Bash - 你是如何调用脚本的?如果你正在做,sh script.sh你可能正在用Dash或类似的东西运行它(而Dash确实在第3行给出了替换错误).尝试使用Bash(bash script.sh)显式运行它.
如果事实证明你实际上正在使用Dash,那么有一些关于差异的有用信息以及如何回到使用Bash(如果你愿意)这里:https://wiki.ubuntu.com/DashAsBinSh
| 归档时间: |
|
| 查看次数: |
47556 次 |
| 最近记录: |