私のスクリプトでは、次のエラーが発生します。問題を特定するのに役立ちますか?
sed "s/$(printf "\302")/ /g" file1 > file1_new
sed: -e expression #1, char 4: unterminated `s' command
しかし、この方法は問題なくうまく機能します。
sed "s/$(printf "\240")/ /g" file1 > file1_new
cat file1_new > file1
rm file1_new
まずは問題ないですか?
ベストアンサー1
sed
バイナリの交換がうまく機能しないようです。ちょうどあなたがしていることをテストしましたが、うまくいくようtr
です。実際には、次の1つのコマンドで簡単に実行できます。
cat /path/to/file1 | tr "$(printf "\302\240")" " " > /path/to/file1_new
tr
最初の引数の文字セットを2番目の引数の文字セットに「変換」するツールです(必要に応じて、最初の引数セットの長さと一致するように拡張されます)。だから私たちはあなたが試したように各文字を空白に変換しますsed
。