ファイルで使用可能な最初の番号を使用してください。

ファイルで使用可能な最初の番号を使用してください。

構成ファイルがありますprosody.config

次のデータを使用します。

VirtualHost "pubsub.subdomain.domain.com"
admins = { "node1.subdomain.domain.com", "node2.subdomain.domain.com" }
    autocreate_on_subscribe = true
    autocreate_on_publish = true
    modules_enabled = {
        "pubsub";
    }

VirtualHost "subdomain.domain.com"
    authentication = "anonymous"
    modules_enabled = {
        "bosh";
    }
    c2s_require_encryption = false

VirtualHost "auth.subdomain.domain.com"
    authentication = "internal_plain"

admins = { "[email protected]" }

Component "node1.subdomain.domain.com"
    component_secret = "password"
Component "node2.subdomain.domain.com"
    component_secret = "password"
Component "conference.subdomain.domain.com" "muc"
Component "focus.subdomain.domain.com"
    component_secret = "password"

node2.subdomain.domain.comこの例では、数字の後に使用可能な最初の数字を見つけて、3同じ設定で再エコーする必要があります。echo -e "Component \"node3.subdomain.domain.com\"\n component_secret = \"password\"" >> prosody.config

最終コンテンツは次のようになります。

VirtualHost "pubsub.subdomain.domain.com"
    admins = { "node1.subdomain.domain.com", "node2.subdomain.domain.com" }
        autocreate_on_subscribe = true
        autocreate_on_publish = true
        modules_enabled = {
            "pubsub";
        }

    VirtualHost "subdomain.domain.com"
        authentication = "anonymous"
        modules_enabled = {
            "bosh";
        }
        c2s_require_encryption = false

    VirtualHost "auth.subdomain.domain.com"
        authentication = "internal_plain"

    admins = { "[email protected]" }

    Component "node1.subdomain.domain.com"
        component_secret = "password"
    Component "node2.subdomain.domain.com"
        component_secret = "password"
    Component "conference.subdomain.domain.com" "muc"
    Component "focus.subdomain.domain.com"
        component_secret = "password"
    Component "node3.subdomain.domain.com"
        component_secret = "password"
    Component "node4.subdomain.domain.com"
        component_secret = "password"

この場合、スクリプトを実行するたびに最大数から1ずつ増加します。"node4.subdomain.domain.com"

ありがとうございます!

ベストアンサー1

短い愚かな解決策:

awk -v FPAT="[0-9]+" 'END{print "node"$1+1}' xyz.config

出力:

node4

  • FPAT="[0-9]+"- フィールド区切り文字を一致させる代わりにフィールドを一致させる正規表現

  • END{...}- ファイルの最後の行だけが考慮されます。

おすすめ記事