次のコマンドが有効です。
sed -i "/BC_CD23.BC_B.BC_A1.N1_C/s/CELL4WL_4BL_3/CELL4WL_4BL_1/g" s1*M8*
sed -i "/BC_CD23.BC_B.BC_A1.N0_C/s/CELL4WL_4BL_3/CELL4WL_4BL_1/g" s1*M8*
このコマンドは効果がありません。
sed -i "/BC_CD23.BC_B.BC_A1.N*_C/s/CELL4WL_4BL_3/CELL4WL_4BL_1/g" s1*M8*
パターンにワイルドカード文字を使用するには?
答え1
パターンにワイルドカードを使用する方法
あなたの特定のケースでは、N*
次のことを意味します。「N
文字が0回以上一致します」。
パターンが単一のN
文字と1つ以上の数字を意味する場合は、パターンの対応する部分が必要ですN[0-9]\{1,\}
。
また.
、(ピリオド)文字は改行文字を含むすべての文字と一致します(ただし、改行文字は入力には表示されません)。文字通り一致するには\.
エスケープする必要があります。基本パターンは次のとおりです。/BC_CD23\.BC_B\.BC_A1\.N[0-9]\{1,\}_C/
https://www.gnu.org/software/sed/manual/sed.html#Overview-of-basic-regular-expression-syntax