コロンは変数置換を中止します。

コロンは変数置換を中止します。

straceを使用するときにデバッグできるように、いくつかのC関数を見つけようとしています。そのため、Firefox(またはリンク)で検索するためにbash機能を設定しましたが、交換が失敗し、:エスケープが機能しません。少なくとも簡単な方法ではありません。

布材

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

問題を解決する%*には変更してください。$*

関連情報