これは私のsed
コマンドです:
while ...;
do sed -r "${counter}s/^\S+ /$line /g" $in > $out;
..
..
done
残念ながら、このコマンドはbashスクリプト/ループ内で呼び出されると何もしません。したがって、変数が正しい方法で解析されたことを確認したいと思います。
do echo ´sed -r "${counter}s/^\S+/$line/g" $in > $out´;
以下をコンソールに印刷します。
sed -r <line number>/^\S+/<replace pattern>/g <infile> > <outfile>
( なし)コンソールでこのコマンドを実行すると、次の結果が表示されます。
sed: -e expression #1, char 8: unterminated s' command
'
周りにパターンがなくてそういう気がします。
それでは、bashスクリプトから呼び出すときに二重引用符(sedコマンドで変数を解析するために使用されます)と一重引用符(検索/置換パターンを完了するために使用されます)をどのように組み合わせますか?
答え1
まあ、変です。出力ファイルへのリダイレクトは発生せず、少なくとも予想される置換は発生しません。cp <infile> <outfile>
Next sed 置換コマンドを使用する A所定の位置に奇跡的に動作します。
ご協力ありがとうございます!