방법-Nexus에서 정규식을 사용하여 검색 | 또는?


9

따라서 악화-Nexus regex 명령 사용법에 대한 좋은 문서를 찾을 수 없습니다.

따라서 내 인터페이스가 다음과 같은 경우

interface Vlan224
  description MANAGEMENT
  no shutdown
  ip flow monitor netflow-monitor input  
  no ip redirects
  ip address 10.214.224.2/24
  ip ospf passive-interface
  ip router ospf 1 area 0.0.0.3
  ip pim sparse-mode
  hsrp version 2
  hsrp 224 
  preempt 
  priority 120
  ip 10.214.224.1 

비슷한 것을 실행하고 싶습니다.

show run | inc (interface Vlan)|(ip address)

그리고 출력이 다음과 비슷하게 보입니다 (IOS에있는 경우).

interface Vlan10
ip address 10.1.10.1 255.255.255.0
interface Vlan 11
ip address 10.1.11.1 255.255.255.0
etc.

답변:


8

당신은 할 수 있습니다 show run | egrep interface.Vlan|ip.address. 좀 더 많은 정보를 얻지 만 IOS에서 보는 것과 비슷한 결과를 제공해야합니다. grep도 잘 작동한다고 생각하지만 egrep을 사용하고 올바른 결과를 얻었습니다.


작동합니다. 따라서 egrep은 show X | Inc? 그리고 코드는 "interface"anything "Vlan"또는 "ip"anything "address"를 찾습니다. (인용 부호없이)
Pseudocyber

나는 그렇게 믿는다. 7k에서 egrep에 대한 문서에 액세스 할 수 있습니다. cisco.com/en/US/docs/switches/datacenter/sw/6_x/nx-os/…
Odeonevets

5

Vlan 인터페이스의 IP 주소를 찾고 있다면 더 좋은 방법은 다음과 같습니다. show ip int br | grep -i vlan

참고 : show ip int brNXOS에서는 계층 3 인터페이스 만 표시합니다. 모든 인터페이스의 상태를 보려면show int br

최신 정보:

NXOS 4.0 (2) 및 이전 버전의 경우 : show run | grep -i face\ vlan|ip\ address

4.0 (3) 이상 : show run | grep ignore-case face\ vlan|ip\ address

또한 \정규식으로 공간을 탈출하는 방법입니다. NXOS 정규식에 대한 링크 : http://www.cisco.com/en/US/docs/switches/datacenter/sw/4_0/nx-os/fundamentals/configuration/guide2/fun_3about_cli.html#wp1237003


또한 서브넷 정보에 대한 정보를 원하므로 "show run"에서 가져 오려고했습니다.
Pseudocyber

내가 참조. 그리고 크기에이 하나를 시도해보십시오 : show run | grep -i face\ vlan|ip\ address 이것은 또한 "얼굴 VLAN을"또는 "IP 주소"중 하나가 포함 된 출력의 모든 행이 표시됩니다
emynd

Richard, 고맙지 만 grep -i
Pseudocyber

내 사과가 더 깊어 보였어 야 했어 이 구문은 NXOS 4.0 (2) 및 이전 버전에서 작동해야합니다. 4.0 (3) -iignore_case
이상인

Richard S, 내가 ios에서 할 수 있었던 것처럼 들리는데 | inc, 이제 NXOS에서 | grep ignore-case blah blah blah. 따옴표없이이 "\"와 같이 공백을 이스케이프해야합니까? 논리적 인 것으로 사용하기 위해 여러 개의 |를 계속 사용할 수 있습니까?
Pseudocyber

5

작은 따옴표가 포함 된 대체 구문입니다.

# show run | inc 'interface Vlan|ip address'

NX-OS에서 인수 구문 분석은 bash와 매우 유사합니다.


3

내가 본 문서 는 이것이 작동해야한다고 말합니다.

show run | inc interface_Vlan|ip_address

4k 블레이드 스위치에서는 그렇지 않습니다. 나는 성공했다

sh run | inc interface.Vlan|ip.address

7K에서는 작동하지 않습니다. 7K # sh run | inc interface_Vlan | ip_address 7K # sh run | inc interface_Vlan | ip_address-p 아래에 당근을 넣습니다. 전혀 출력이 없습니다.
Pseudocyber

Nexus를 사용해 볼 수는 없지만 (interface.Vlan | ip.address) 시도 할 수 있습니다. p 아래의 ^는 "| i"를 두 번째 파이프로 해석하는 것처럼 들립니다.
Dave Noonan 2016 년

@Pseudocyber : * caret :-)
Paul Gear

문서 별 및 IOS와 달리 "밑줄은 BPG 관련 명령에 대한 정규식으로 만 처리됩니다"
belacqua

0

쉬운 대답은 IOS에서 NX-OS 로의 일대일 매핑의 경우 다음과 같습니다.

iOS : show run | inc (interface Vlan)|(ip address)
NX-OS : show run | inc 'interface Vlan|ip address'

원본에 여분의 파렌을 남길 때 더 의미가 있습니다.

show run | inc (interface Vlan|ip address)

이 예의 핵심은 NX-OS의 경우, 괄호가 따옴표로 대체된다는 것입니다.

큰 따옴표를 사용할 수도 있습니다 (예 :) "" .

NX-OS는 Linux 기반 [1] 이며 * nix와 같은 정규 표현식 엔진을 사용합니다. 명령은 영어 표현과 표준 정규식 관용구 사이에서 이상합니다.

예를 들어, egrep -vbash에 egrep ignore-case
있는 것은 명령 행에서 다음과 같이 보일 것입니다.

show run | egrep ignore-case vpc
또는
show run | inc ignore-case vpc

새로운 정규식 기능의 자세한 내용 및 강도 예 :
show run | egrep ignore-case vpc | egrep invert-match ignore-case peer

이것은 bash-shell과 같습니다. egrep -i vpc <input> | egrep -vi peer

그럼에도 불구하고, 현재 IOS보다 훨씬 더 많은 힘과 유연성이 있습니다.

기본 Cisco 설명서가 여기 있지만 * 명령 줄 ?기능을 통해 다음과 같은 빠른 알림을받을 수 있습니다.

5k# show run | ?
  cut      Print selected parts of lines.
  diff     Show difference between current and previous invocation (creates temp files: remove them
           with 'diff-clean' command and dont use it on commands with big outputs, like 'show 
           tech'!) 
  egrep    Egrep - print lines matching a pattern
  grep     Grep - print lines matching a pattern
  head     Display first lines
  human    Output in human format
  last     Display last lines
  less     Filter for paging
  no-more  Turn-off pagination for command output
  section  Show lines that include the pattern as well as the subsequent lines that are more
           indented than matching line 
  sort     Stream Sorter
  tr       Translate, squeeze, and/or delete characters
  uniq     Discard all but one of successive identical lines
  vsh      The shell that understands cli command
  wc       Count words, lines, characters
  xml      Output in xml format (according to .xsd definitions)
  begin    Begin with the line that matches
  count    Count number of lines
  end      End with the line that matches
  exclude  Exclude lines that match
  include  Include lines that match

5k# show run | inc ?
  WORD         Search for the expression
  ignore-case  Ignore case difference when comparing strings
  line-exp     Print only lines where the match is a whole line

5k# show run | egrep ?
  WORD          Search for the expression
  count         Print a total count of matching lines only
  ignore-case   Ignore case difference when comparing strings
  invert-match  Print only lines that contain no matches for <expr>
  line-exp      Print only lines where the match is a whole line
  line-number   Print each match preceded by its line number
  next          Print <num> lines of context after every matching line
  prev          Print <num> lines of context before every matching line
  word-exp      Print only lines where the match is a complete word

그런 다음 "fun"(다른 것)을 검색하여 기본 구성 안내서 ( 명령 줄 인터페이스 이해 장의 정규식 섹션 포함 )를 찾으십시오 .

이스터 에그? 이 문서의 장 번호는 이진수입니다.

당신이 문서를 걸 으면, 당신은 훨씬 더 포함하여 명령 줄 도구, nix에서 스크립트와 같은 * 찾을 수 있습니다 cut, tr그리고 7K에, sed그리고 몇몇 다른 만요.

또한 'include'일치에 대한 prevnext수정자를 간과하지 마십시오 .

이것은 컨텍스트를 위해 foo를 포함하는 줄과 앞뒤에 세 줄을 가져옵니다.
show run | inc foo prev 3 next 2

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.