私は組み込みのbashサブストリングを使用して、サブシェルまたは別のbash関数の出力を置き換えようとしています。
以下のコマンドはzshで非常にうまく機能します。しかしbad substitution、bashでエラーが発生します。
${${PWD##*/}//trunk/latest}
または
${$(basename $PWD)//trunk/latest}
出力は、最後のフォルダであるべき$PWDで置き換えられ、latest私の現在のディレクトリがあるときtrunk
そうなる/home/user/trunkはずlatest
変数やパイプに依存せずに文字列エディションをチェーンできるbash同等のものはありますか?または、bashビルトインでは、入力を文字列またはプレーン変数のみにできますか?
sed、いくつかのステップで達成できます。しかし、bashがサブシェルの実行を拒否し、他の文字列と同様にその内容を置き換える理由がわかりません