この問題は、Dockerコンテナでのみ発生します。
だけfind
で結構です。
find ${BASIN_SPIDER_CONFIG_PATH} -type f -name "*.json"
find
セッド付き
find ${BASIN_SPIDER_CONFIG_PATH} -type f -name "*.json"|xargs sed -i "s/10.142.55.199/host02/g"
エラーを出します:
/xxx/config/sed8Ey5tD: Device or resource busy
何なのか分からないsed8Ey5tD
、ls
見えない。港湾労働者によるものだと思いますが、わかりません。
sed
成功する方法は?
OK、ファイルがdockerによってボリューム化されていることがわかり volumes: /xxx/config.json : /xxx/config/config.json
ましたdocker-compose.yml
。その後docker-compose down
、ファイルを編集できます。しかし、どうすればファイルを編集できますdocker-compose down
か?
@cuonglm sedを成功させる方法を知りたい。
—
ミスリル
コンテナ内に書き込み権限があることを確認していますか?
—
user1700494 2017年
@ user1700494 rootユーザー
—
Mithril
sed
バックアップファイルを作成しないように強制することができますxargs sed -i'' "s/10.142.55.199/host02/g"
(-i
キーの直後に一重引用符を追加します)
sed
。インプレース変更をsed
行うと、オリジナルの破損を防ぐために作業する一時ファイルが作成されます。何かがうまくいけば、オリジナルを一時的なものに置き換えます。しかし、あなたの質問は何ですか?あなたはそのエラーの原因またはsed8Ey5tD
ファイルは何であるか知りたいですか?