-2
以下の出力から「Manage VLAN」の値を正規表現で抽出し、後でスクリプトで使用する変数に値を格納する必要があります。複数行のテキストの後の文字列を一致させる
set switch 100.10.100.100
set Username "test"
set Password "test"
spawn ssh -o StrictHostKeyChecking=no [email protected]$switch
expect "*assword: "
send "$Password\r"
expect *>
send "enable\r"
expect "*#"
send "config\r"
expect "(config)#"
send "display something"
出力は次のようになります。
status : Connected
IP Address : 2.2.2.2
Mask : 255.255.255.255
Gateway : 2.2.2.1
Manage VLAN : 456
Manage priority : 0
Option60 : No
Switch : Enable
私はこれをどのように実現するのでしょうか?
あなたは出力を抑制したり、出力を保持すると同時に、必要なデータを抽出したいですか? – RomanPerekhrest
私はすべての出力を抑え、Manage VLANフィールドから値を抽出し、その値を変数に割り当てます。 – n33raj116
あなたはどのツールを使用していますか?私はあなたが「期待する」ものを何かしたくないとは確信できません。そうでなければ、 'awk '/ Manage VLAN/{print $ 3}'が値を出力します。 'tclsh'にvarsを格納することについては不明ですが、おそらく' set val = \ 'awk .... \' '?バックチックを認識できない場合は、コマンド置換を検索して読んでください。がんばろう。 – shellter