sedの使用変数は、一般的なアプローチは、変数を解決することはできません
今のRedisを置き換え、現在の文字列足白癬文書ファイルの存在
[ルート@ localhostの作業]#の猫の ファイル 足白癬
以下の2つの選択肢が実現可能ではありません
#!/ binに/ bashの old_str = 足白癬 new_str = Redisの SED -i ' S / $ old_str / $ new_str / gの' ファイル のsed -i ' sの#$#$ old_str new_str#グラム' ファイル
3つの単引用符を使用する変数の原因は、問題を解決することができます
#!/ binに/ bashの old_str = 足白癬 new_str = Redisの #sedの -i ' S / $ old_str / $ new_str / gの' ファイル #sedは -i ' sの#$#$ old_str new_str#グラム' ファイル のsed -i " S / '' ' $ old_str ''' / '' ' $のnew_str ''' / G " ファイル
結果
[ルート@ localhostの作業]#の猫の ファイル 足白癬 [ルート@ localhostの仕事]#。/交換してください。SH [ルート@ localhostの作業]#の猫の ファイル のRedis