bash与"糟糕的替代"在windows bash上

时间:2017-03-05 10:01:04

标签: windows bash parameters sh substitution

我尝试构建optiboot引导程序。这有一些错误,我试着解决它们。我想optiboot是建立在linux系统上的。 所以我安装了https://sourceforge.net/projects/win-bash/files/shell-complete/latest/并将其路径添加到PATH变量。

但是bash / sh脚本仍然会以#34;糟糕的替换"

生成的bash脚本如下所示。我已经用#!/ bin / bash添加了第一行,但它没有成功。

#!/bin/bash
# 1 "baudcheck.c"
# 1 "C:\\Users\\trivalik\\Downloads\\arduino-1.8.0    \\hardware\\anet\\avr\\bootloaders\\atmega//"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "baudcheck.c"
# 24 "baudcheck.c"
bpsx=115200
bps=${bpsx/L/}
bps=${bps/U/}
fcpux=16000000L
fcpu=${fcpux/L/}
fcpu=${fcpu/U/}

echo $bpsx
echo $bps

当我使用&#34; bash baudcheck.tmp.sh&#34;在操作系统Windows 10上执行此操作时我明白了:

115200

baudcheck.tmp.sh: ${bpsx/L/}: bad substitution
baudcheck.tmp.sh: ${bps/U/}: bad substitution
baudcheck.tmp.sh: ${fcpux/L/}: bad substitution
baudcheck.tmp.sh: ${fcpu/U/}: bad substitution

主要问题是,Windows上参数替换的不同之处是什么? 还是完全禁用?

这里的所有重击提示都让我无法帮助。

编辑:

解决方案似乎是来自win-bash的bash非常古老。 版本返回:

bash$ echo $BASH_VERSION
win-bash_0.8.5(0)

相反,我现在使用了来自git的bash for Windows https://git-for-windows.github.io/

这个bash版本不是最新版但更高版本:

$ echo $BASH_VERSION
4.3.42(5)-release

有人知道更高的Windows版bash版本吗?

0 个答案:

没有答案