2017-08-02 75 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

应该可以。如果存在,该怎么办?如果不存在? –

相关问题