![冒号破坏了变量替换](https://linux22.com/image/30591/%E5%86%92%E5%8F%B7%E7%A0%B4%E5%9D%8F%E4%BA%86%E5%8F%98%E9%87%8F%E6%9B%BF%E6%8D%A2.png)
我正在尝试查找一些 C 函数,以便我可以在使用 strace 时进行调试。所以我设置了一个bash函数来在firefox(或链接)中查找它,但是替换失败并且:
转义不起作用,至少不是以简单的方式。
在职的
ff() {
firefox "https://www.google.com/search?hl=en&q=%*"
}
不工作
cr() {
firefox "codewiki.wikidot.com/c:system-calls:%*"
}
firefox 被:
解析为输入,但 $* 也被解析为文字字符。
尝试过:
1. Escaping : % *
2. Enclosing ${%*}
3. Changing " '
4. EnvVariable COMP_WORDBREAKS=${COMP_WORDBREAKS//:}
编辑:我的问题有缺陷。我的工作代码$*
一直都有。我想删除我的问题,但我将其留给可能被鼓励写答案并改进类似问题的问题的人参考。
答案1
更改%*
以$*
解决问题。