Bash $(pwd) 上的脚本子字符串?错误的替换错误
Bash script substring on $(pwd)? Bad substitution error
我正在尝试在 bash 上做一个子字符串,我正在关注这个 Bash 脚本 cheat sheet.
echo $(pwd)
> Successfully outputs the current working DIR
我做错了什么?
我正在尝试在索引 2 处对 $(pwd)
进行切片。我知道可以省略长度,从该位置到 return 字符串的其余部分。
所以我正在这样做,但我遇到了 bad substitution
错误。
echo ${$(pwd):2}
> bash: ${$(pwd):2}: bad substitution
您对命令替换和参数替换感到困惑。
在您的特定情况下,您需要先将 pwd 的命令替换读入变量,然后将其用于参数扩展等:
pworkd=$(pwd)
echo ${$(pworkd):2}
我正在尝试在 bash 上做一个子字符串,我正在关注这个 Bash 脚本 cheat sheet.
echo $(pwd)
> Successfully outputs the current working DIR
我做错了什么?
我正在尝试在索引 2 处对 $(pwd)
进行切片。我知道可以省略长度,从该位置到 return 字符串的其余部分。
所以我正在这样做,但我遇到了 bad substitution
错误。
echo ${$(pwd):2}
> bash: ${$(pwd):2}: bad substitution
您对命令替换和参数替换感到困惑。
在您的特定情况下,您需要先将 pwd 的命令替换读入变量,然后将其用于参数扩展等:
pworkd=$(pwd)
echo ${$(pworkd):2}