I have many files with info about soft, installed on remote machines.
I need to compare this file with template (soft than must be installed) and output file must content info about software that's not installed.
workstation1_info.txt
software_name3.2
Lantronix
..any other software
software_name1
output must be software_name2, becouse it is not installed, but software_name3.2 is good enough becouse version is more than we need.
So, the task is to show lines that is in template and not in source, using simple regular expressions
I use grep
grep -vxf template source >out
or
grep -Fvf template source >out
But it shows me only lines that is in source and not in template etc...
I need so fast to solve this problem, becouse it is deadly urgent case.
Please help me.
Hi.
there's two much different version and packages of software...
So I don't know what the name of it will be in source file.
I know that version of some soft must be >5.x.x.
McAfee AntiSpyware Enterprise Module;8.7.0.130
MySQL ODBC 3.51 Driver;03.51.05 - Gamma
Windows XP Service Pack 3
source
McAfee AntiSpyware Enterprise Module;8.7.0.129
Windows XP Service Pack 3;20080414.175805
McAfee VirusScan Enterprise
Altiris Version: 6.9.430.0
output must be
McAfee AntiSpyware Enterprise Module;8.7.0.130
MySQL ODBC 3.51 Driver;03.51.05 - Gamma
McAfee AntiSpyware Enterprise Module;8.7.0.130 - becouse version in source is older
MySQL ODBC 3.51 Driver;03.51.05 - Gamma - becouse it is not in source.
Or any other way, I need just point on mismatch
It's not match fo my task.
I want use awk -f program.awk
Is there any way to solve
---------- Post updated at 07:53 AM ---------- Previous update was at 07:51 AM ----------
it's becouse I plan to use script on unix and windows machines
---------- Post updated at 07:54 AM ---------- Previous update was at 07:53 AM ----------
I have gnu awk for windows.
---------- Post updated at 08:01 AM ---------- Previous update was at 07:54 AM ----------
I need pipe becouse it must run on many computers, and names of directories and files is uniq for every machine. So first part of pipe takes filename and put it to awk.
Your help improve very much, thank you. It's totally solution. I need now only to cover it for perfect output.