Sponsored Content
Top Forums Shell Programming and Scripting Grep regex to ignore sequence only if surrounded by fwd-slashes Post 302877468 by Don Cragun on Sunday 1st of December 2013 02:42:33 PM
Old 12-01-2013
As long as you don't have input lines that contain both an ip address and an ip-like address between slash characters, the following seems to do what you want:
Code:
skipIpExpr1="[/][0-9]+\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]+[/]"
extractIpExpr2="[0-9]+\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]+"

# Pipe to sort -u so duplicates are removed.
# Note: -E is to use EREs and -o is to print only the matching parts, and -v
# discards matching lines.

ipLikeAddressMatches=$(grep -Ev "$skipIpExpr1" "$tempFileName" | \
                       grep -Eo "$extractIpExpr2" | sort -u)

When given the 1st message in this thread as input, ipLikeAddressMatches is set to:
Code:
11.11.11.11
111.222.222.111
1111.11.11.1111
1111.222.222.1111

This User Gave Thanks to Don Cragun For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

To grep in sequence

Hi, I have a log file containg records in sequence <CRMSUB:MSIN=2200380,BSNBC=TELEPHON-7553&TS21-7716553&TS22-7716553,NDC=70,MSCAT=ORDINSUB,SUBRES=ONAOFPLM,ACCSUB=BSS,NUMTYP=SINGLE; <ENTROPRSERV:MSIN=226380,OPRSERV=OCSI-PPSMOC-ACT-DACT&TCSI-PPSMTC-ACT-DACT&UCSI-USSD;... (17 Replies)
Discussion started by: helplineinc
17 Replies

2. Fedora

Hosting issue regarding subdirectories and fwd Slashes

I admin two co-located servers. I built an app that creates subdirectories for users ie www.site.com/username. one server that works just fine when you hit that url, it sees the index within and does as it should. I moved the app to my other server running FEDORA 1 i686 standard, cPanel... (3 Replies)
Discussion started by: iecowboy
3 Replies

3. UNIX for Dummies Questions & Answers

| help | unix | grep (GNU grep) 2.5.1 | advanced regex syntax

Hello, I'm working on unix with grep (GNU grep) 2.5.1. I'm going through some of the newer regex syntax using Regular Expression Reference - Advanced Syntax a guide. ls -aLl /bin | grep "\(x\)" Which works, just highlights 'x' where ever, when ever. I'm trying to to get (?:) to work but... (4 Replies)
Discussion started by: MykC
4 Replies

4. Shell Programming and Scripting

ignore fields to check in grep

Hi, I have a pipe delimited file. I am checking for junk characters ( non printable characters and unicode values). I am using the following code grep '' file.txt But i want to ignore the name fields. For example field2 is firstname so i want to ignore if the junk characters occur... (4 Replies)
Discussion started by: ashwin3086
4 Replies

5. Shell Programming and Scripting

Grep but ignore first column

Hi, I need to perform a grep from a file, but ignore any results from the first column. For simplicity I have changed the actual data, but for arguments sake, I have a file that reads: MONACO Monaco ASMonaco MANUTD ManUtd ManchesterUnited NEWCAS NewcastleUnited NAC000 NAC ... (5 Replies)
Discussion started by: danhodges99
5 Replies

6. Shell Programming and Scripting

regex - start with a word but ignore that word

Hi Guys. I guess I have a very basic query but stuck with it :( I have a file in which I want to extract particular content. The content is between standard format like : Verify stats A=0 B=12 C=34 TEST Failed Now I want to extract data between "Verify stats" & "TEST Failed" but do... (6 Replies)
Discussion started by: ratneshnagori
6 Replies

7. Shell Programming and Scripting

Ignore escape sequence in sed

Friends, In the file i am having more then 100 lines like, File1 had the values like this: #Example East.server_01=EAST.SERVER_01 East.server_01=EAST.SERVER_01 West.server_01=WEST.SERVER_01 File2 had the values like this: #Example EAST.SERVER_01=http://yahoo.com... (3 Replies)
Discussion started by: jothi basu
3 Replies

8. Shell Programming and Scripting

Need sequence no in the grep output

Hi, How to achieve the displaying of sequence no while doing grep for an output. Ex., need the output like below with the serial no, but not the available line number in the file S.No Array Lun 1 AABC 7080 2 AABC 7081 3 AADD 8070 4 AADD 8071 5 ... (3 Replies)
Discussion started by: ksgnathan
3 Replies

9. Shell Programming and Scripting

Grep command to ignore line starting with hyphen

Hi, I want to read a file line by line and exclude the lines that are beginning with special characters. The below code is working fine except when the line starts with hyphen (-) in the file. for TEST in `cat $FILE | grep -E -v '#|/+' | awk '{FS=":"}NF > 0{print $1}'` do . . done How... (4 Replies)
Discussion started by: Srinraj Rao
4 Replies

10. Shell Programming and Scripting

Grep and ignore list from file

cat /tmp/i.txt '(ORA-28001|ORA-00100|ORA-28001|ORA-20026|ORA-20025|ORA-02291|ORA-01458|ORA-01017|ORA-1017|ORA-28000|ORA-06512|ORA-06512|Domestic Phone|ENCRYPTION)' grep -ia 'ORA-\{5\}:' Rep* |grep -iavE `cat /tmp/i.txt` grep: Unmatched ( or \( Please tell me why am i getting that (6 Replies)
Discussion started by: jhonnyrip
6 Replies
ipaddrsel(1M)															     ipaddrsel(1M)

NAME
ipaddrsel - configure IPv6 default address selection SYNOPSIS
/usr/sbin/ipaddrsel /usr/sbin/ipaddrsel -f file /usr/sbin/ipaddrsel -d Use the ipaddrsel utility to configure the IPv6 default address selection policy table. The policy table is a longest-matching-prefix lookup table that is used for IPv6 source address selection and for destination address ordering when resolving names to AF_INET6 addresses. For a description of how the policy table is used for source address selection, see inet6(7P). For a description of how the pol- icy table is used for destination address ordering, see getaddrinfo(3SOCKET). The unmodified policy table is valid for all typical IPv6 deployments. Modify the table only if a circumstance exists for which the default behavior of the IPv6 source address selection or destination address ordering mechanism is unsatisfactory. See the section for examples of such circumstances. You should carefully consider your addressing strategy before you change the table from the provided default. When the ipaddrsel command is issued without any arguments, the address selection policy currently in use is printed. The format of the output is compatible with the format of the configuration file that the -f option accepts. Note - If the usesrc subcommand to ifconfig(1M) is applied to a particular physical interface, the selection policy specified by usesrc overrides the source address selection policies specified by ipaddrsel. This is true for packets that are locally generated and for applications that do not choose a non-zero source address using bind(3SOCKET). The Configuration File The configuration file that the -f option accepts can contain either comment lines or policy entries. Comment lines have a '#' character as the first non-blank character. and they are ignored by the ipaddrsel utility. Policy entry lines have the following format: prefix/prefix_length precedence label [# comment ] The prefix must be an IPv6 prefix in a format consistent with inet(3SOCKET). The prefix_length is an integer ranging from 0 to 128. The IPv6 source address selection and destination address ordering algorithms determine the precedence or label of an address by doing a long- est-prefix-match lookup using the prefixes in this table, much like next-hop determination for a destination is done by doing a longest- prefix-match lookup using an IP routing table. The precedence is a non-negative integer that represents how the destination address ordering mechanism will sort addresses returned from name lookups. In general, addresses with a higher precedence will be in front of addresses with a lower precedence. Other factors, such as destinations with undesirable source addresses can, however, override these precedence values. The label is a string of at most fifteen characters, not including the NULL terminator. The label allows particular source address prefixes to be used with destination prefixes of the same label. Specifically, for a particular destination address, the IPv6 source address selec- tion algorithm prefers source addresses whose label is equal that of the destination. The label may be followed by an optional comment. The file must contain a default policy entry, which is an entry with "::0/0" as its prefix and prefix_length. This is to ensure that all possible addresses match a policy. The ippadrsel utility supports the following options: -f file Replace the address selection policy table with the policy specified in the file. -d Revert the kernel's address selection policy table back to the default table. Invoking ipaddrsel in this way only changes the currently running kernel's policy table, and does not alter the configuration file /etc/inet/ipaddrsel.conf. To revert the configuration file back to its default settings, use ipaddrsel -d, then dump the contents of the table to the configu- ration file by redirecting the output of ipaddrsel to /etc/inet/ipaddrsel.conf. example# ipaddrsel -d example# ipaddrsel > /etc/inet/ipaddrsel.conf Example 1: The Default Policy in /etc/inet/ipaddrsel.conf The following example is the default policy that is located in /etc/inet/ipaddrsel.conf: # Prefix Precedence Label ::1/128 50 Loopback ::/0 40 Default 2002::/16 30 6to4 ::/96 20 IPv4_Compatible ::ffff:0.0.0.0/96 10 IPv4 Example 2: Assigning a Lower Precedence to Link-local and Site-local Addresses By default, the destination address ordering rules sort addresses of smaller scope before those of larger scope. For example, if a name resolves to a global and a site-local address, the site local address would be ordered before the global address. An administrator can override this ordering rule by assigning a lower precedence to addresses of smaller scope, as the following table demonstrates. # Prefix Precedence Label ::1/128 50 Loopback ::/0 40 Default 2002::/16 30 6to4 fec0::/10 27 Site-Local fe80::/10 23 Link-Local ::/96 20 IPv4_Compatible ::ffff:0.0.0.0/96 10 IPv4 Example 3: Assigning Higher Precedence to IPv4 Destinations By default, IPv6 addresses are ordered in front of IPv4 addresses in name lookups. ::ffff:0.0.0.0/96 has the lowest precedence in the default table. In the following example, IPv4 addresses are assigned higher precedence and are ordered in front of IPv6 destinations: # Prefix Precedence Label ::1/128 50 Loopback ::/0 40 Default 2002::/16 30 6to4 ::/96 20 IPv4_Compatible ::ffff:0.0.0.0/96 60 IPv4 Example 4: Ensuring that a particular source address is only used when communicating with destinations in a particular network. The following policy table assigns a label of 5 to a particular source address on the local system, 2001:1111:1111::1. The table assigns the same label to a network, 2001:2222:2222::/48. The result of this policy is that the 2001:1111:1111::1 source address will only be used when communicating with destinations contained in the 2001:2222:2222::/48 network. For this example, this network is the "ClientNet", which could represent a particular client's network. # Prefix Precedence Label ::1/128 50 Loopback 2001:1111:1111::1/128 40 ClientNet 2001:2222:2222::/48 40 ClientNet ::/0 40 Default 2002::/16 30 6to4 ::/96 20 IPv4_Compatible ::ffff:0.0.0.0/96 10 IPv4 This example assumes that the local system has one physical interface, and that all global prefixes are assigned to that physical inter- face. ipaddrsel returns the following exit values: 0 ipaddrsel successfully completed. >0 An error occurred. If a failure is encountered, the kernel's current policy table is unchanged. /etc/inet/ipaddrsel.conf The file that contains the IPv6 default address selection policy to be installed at boot time. This file is loaded before any Internet services are started. See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWcsu | +-----------------------------+-----------------------------+ |Interface Stability |Evolving | +-----------------------------+-----------------------------+ nscd(1M), inet(3SOCKET), getaddrinfo(3SOCKET), ipaddrsel.conf(4), attributes(5), inet6(7P) The ipnodes cache kept by nscd(1M) contains addresses that are ordered using the destination address ordering algorithm, which is one of the reasons why ipaddrsel is called before nscd in the boot sequence. If ipaddrsel is used to change the address selection policy after nscd has started, you should invalidate the nscd ipnodes cache invalidated by invoking the following command: example# /usr/sbin/nscd -i ipnodes 16 Jul 2004 ipaddrsel(1M)
All times are GMT -4. The time now is 08:24 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy