3

簡単に言うと、bash スクリプトで機能するには、以下のコマンドが必要です。

仮想 kvm が使用しているネットワーク サブネットを変更する必要があります。私にとってこれが難しいのは、コマンドとして変更しようとすることです。通常、コマンド sudo virsh net-edit defaultを実行すると、vi (または何でも) セッションが開き、編集して閉じます。

net-editオプションを使用すると、ユーザーは好みのエディターを使用して、仮想ネットワークの XML 構成を編集できます。net-edit は、ユーザーの $EDITOR 環境変数で定義されたコマンド (またはスクリプト) を起動し、仮想ネットワークの XML 構成の一時コピーを渡します。

ユーザーがエディタを終了すると、net-edit は一時ファイルが変更されたかどうかをチェックします。

私にとっては、スクリプトで使用できるように、これを sed に渡したいと思います。次の例はコマンド ラインからは機能しますが、スクリプトでは機能しません。何が間違っているのかわかりませんが、まだこれを理解していません。誰かがアイデアを持っていれば、それは大歓迎です。

これはコマンド ラインからは機能しますが、スクリプトでは機能しません。コマンドに関するエラー メッセージを取得します。

    EDITOR='sed -i "s/192.168.100.1/192.168.11.1/g"' virsh net-edit default

これは関連スレッドです: Virbr0 の XML ファイルで virsh を使用して bash スクリプトで dhcp IP 範囲を変更する

これはエラーメッセージです

./test: 2 行目: export: `net-edit': 有効な識別子ではありません

4

1 に答える 1

1

いくつかの点で sed コマンドに問題があり、ある時点で root 権限で実行するのを忘れていたので、要するに、上記のコマンドはスクリプトで機能します。

于 2013-02-24T22:00:13.223 に答える