我正在尝试使用 Bash 参数扩展来修改命令替换或其他参数扩展的输出。
以下嵌套扩展在 Zsh 中工作得很好;但在 Bash 中导致“错误替换”错误:
${${PWD##*/}//trunk/latest}
Run Code Online (Sandbox Code Playgroud)
或者
${$(basename $PWD)//trunk/latest}
Run Code Online (Sandbox Code Playgroud)
输出应该是最后一个文件夹$PWD
,取而代之的是latest
,当我的当前目录是trunk
所以/home/user/trunk
应该成为latest
是否有 Bash 等效项允许在不依赖变量或管道的情况下进行链式扩展?还是 Bash 扩展只允许输入是字符串或普通变量?
bash ×1