I am trying to do a pattern match search for anything that has numbers for employeeID: xxxxxx and bring all entries that matches. But it doesn't seem to work as expected. And vice versa where bring all entries that doesn't have a number in the employeeID field.
My testfile
dn: CN=User One,OU=Disabled,OU=People,DC=training,DC=example,DC=
com
userAccountControl: 514
employeeID: user1
comment: HIRED
sAMAccountName: user1
dn: CN=Given-iPad01,OU=Room,DC=training,DC=example,DC=com
userAccountControl: 544
employeeID: Given-iPad01
sAMAccountName: Given-iPad01
lastLogonTimestamp: 130678281934843750
dn: CN=User Two,OU=Admins,DC=training,DC=example,DC=com
userAccountControl: 512
employeeID:: IDE2NzQwODg=
sAMAccountName: user2
lastLogonTimestamp: 131685330348725308
dn: CN=Test User2,OU=2012,OU=People,DC=training,DC=example
,DC=com
userAccountControl: 512
employeeID: testuser2
sAMAccountName: testuser2
lastLogonTimestamp: 131328157284117480
dn: CN=User Three,OU=People,DC=training,DC=example,DC=com
userAccountControl: 512
employeeID: 123456
comment: HIRED
sAMAccountName: user3
lastLogonTimestamp: 131679287880585713
My expected output was to bring all entires except the one that has employeeID: testuser, but my result came only with entry where I have employeeID: 123456.
Below is what i was looking for
dn: CN=User One,OU=Disabled,OU=People,DC=training,DC=example,DC=com
userAccountControl: 514
employeeID: user1
comment: HIRED
sAMAccountName: user1
dn: CN=User Two,OU=Admins,DC=training,DC=example,DC=com
userAccountControl: 512
employeeID:: IDE2NzQwODg=
sAMAccountName: user2
lastLogonTimestamp: 131685330348725308
dn: CN=User Three,OU=People,DC=training,DC=example,DC=com
userAccountControl: 512
employeeID: 123456
comment: HIRED
sAMAccountName: user3
lastLogonTimestamp: 131679287880585713
dn: CN=Test User2,OU=2012,OU=People,DC=training,DC=example,DC=com
userAccountControl: 512
employeeID: testuser
sAMAccountName: testuser
lastLogonTimestamp: 131328157284117480
dn: CN=Given-iPad01,OU=Rooms,DC=training,DC=example,DC=com
userAccountControl: 544
employeeID: Given-iPad01
sAMAccountName: Given-iPad01
lastLogonTimestamp: 130678281934843750
Below is what I tried:
To pull that contains number anywhere on the employeeID entry
perl -000 -ne 'print if /employeeID: [0-9]/' testfile
Not to pull those contains number anywhere on the employeeID entry
perl -000 -ne 'print if !/employeeID: [0-9]/i' testfile