Dockerコンテナの31行目のファイルに変数を作成する必要があります。私はbashスクリプトを使用します
私のコマンドは次のとおりです。
txt="
log-bin
server_id=1"
docker exec $container sed -i "31i\
$txt /etc/mysql/my.cnf
次のエラーが発生します。
sed: -e expression #1, char 8: extra characters after command
私のファイルに何も追加されていません...
助けてください?
ベストアンサー1
私はドッカーコンテナについて何も知りませんが、特定の行の前に変数の内容を挿入したい場合は、次のGNU sedコマンドを使用できます。
VAR="$txt" sed -i.bk '31{h;s:.*:printf "%s" "$VAR":e;G}' /etc/mysql/my.cnf
安全上の理由から、上記のコマンドは拡張子です.bk
。