2017-08-02 70 views
-1

我有一個txt文件(網絡交換機配置文件)有多個接口,名稱爲GigabitEthernet1 GigabitEthernet1/1 GigabitEthernet1/2等等,並且ohter接口也是如此被隔開!這個符號。我想在另一個名爲千兆的文件中grep所有這些接口。shell腳本查找特殊字符和字符串之間的連線

enter image description here

如圖片所示 JUSE我只希望在另一個文件中的所有以太網接口。

+0

在Python中,你應該能夠分裂!然後只獲取包含千兆以太網的字符串。另請注意,輸入字符串的文本示例比圖片更有用。 – BoboDarph

+0

你的問題不清楚 - 請嘗試改進它。 –

回答

0

如果您將記錄分隔符設置爲感嘆號,則awk會將您的文件的每個「段落」讀取爲包含感嘆號的文件作爲單個記錄。

然後只需要找到包含Gigabit Ethernet這樣的記錄:

awk '/interface GigabitEthernet/' RS='!' YourFile 

我只輸入你的數據文件在大約因爲你發佈你的數據的畫面 - 這是不是非常有幫助:-)

樣本輸出

interface GigabitEthernet1/1 
description something A 
switchport access vlan22 
switchport mode access 


interface GigabitEthernet1/2 
description something B 
switchport access vlan98 
switchport mode access 


interface GigabitEthernet1/3 
description something A 
switchport access vlan22 
switchport mode access 

如果你想在一個新的文件輸出,請這樣做:

awk '/interface GigabitEthernet/' RS='!' YourFile > NewFile 
+0

謝謝馬克,我得到了我想要的。你能幫我檢查一下如何檢查,說明條目是否存在或不在每個界面中。 – Atul

+0

應該可以。如果存在,該怎麼辦?如果不存在? –

相關問題