2016-08-11 44 views
0

一部の場所に*****を含むテキストファイルがあります。 *****9.999に置き換える必要があります。これは明らかにいくつかの書式設定エラーから来ましたが、私は今作業しなければならないファイルを作成したプログラムを持っていません。私は予想通り、しかしsed反復演算子オペランドが無効*****

sed -i "" 's/*****/9.999/g' *.dat 

、私は次のようなエラーメッセージが出ます::私は、CSHで次のコマンドを使用してみました

sed: 1: "s/*****/9.999/g": RE error: repetition-operator operand invalid 

を私は*****は特別なオペレータと考えられているためであると仮定したりしていますそのようなものですが、sedコマンドの使用中にそれらを免除する方法を理解することはできません。

誰でも助けるヒントはありますか?

+0

YAY!ありがとうございました!!!これはうまくいった! :) – BorgChick

+1

試す最初の手順はマニュアルを読むことです。それはあまりにも時間がかかりすぎるならば、エスケープ演算子(例えば 's/\ * \ * \ * \ * \ */9.999/g')としてバックスラッシュを使用します。一般的なのは特別な文字を逃れるための非常に一般的な方法ではありません。特に、 'sed'のようなUnix上で起きた古いプログラムではそうです。 –

答えて

2
sed -E 's/\*{5}/9.999/g' file 
関連する問題