I want to subtract 2 files and save the remaining text in another file. Lets say,
File2
Output
I do not want to remove the whole line. Just need the exact subtraction. When I used grep -vf file2 file1 It removes whole line. How to get the exact subtraction? Thanks
Last edited by Don Cragun; 08-11-2016 at 11:15 PM..
Reason: Add CODE AND ICODE tags.
I'm using opensuse 13.2. Yeah I figured it out using,
This removes the exact text needed to be subtracted. By the way can you help me to differentiate between pointers and multiplications of a C cod. I need to eliminate lines, containing pointers from a C code and save the rest to a text file using a shell script
Hi beginner_99,
Note that the command:
doesn't just remove the strings found in file2 from file1; it removes every line from file1 that contains any string found in file2.
And, assuming that the strings contained in file2 only consist of characters that are not "special" in a regular expression (RE), the code suggested by itkamaraj will not only remove the strings Happy and Hi from file1, it will also remove the string HHappyi (by removing Happy in the 1st invocation of sed and by removing the remaining Hi in the 2nd invocation of sed after removing Happy from HHappyi in the 1st invocation of sed).
The awk script suggested by RudiC will not only remove the strings Happy and Hi, but will also either remove the string HHappyi as in itkamaraj's sed script OR the strings HHiappy, HaHippy, HapHipy, and HappHiy depending on which of the two possible random orders awk uses to process the two lines found in file2 (there are 2**(N-1) possible random orders to process the N lines in file2 for the more general case).
If the strings you are processing might contain characters that are "special" in a regex used by awk or sed, you need to use awk instead of sed and use match() instead of sub() to find the matching strings or preprocess the REs in file2 to escape "special" characters.
If you want to remove all remaining matching strings after removing strings on the first pass, you'll need to use awk or sed commands to delete matched strings in a loop until no more matches are found.
Knowing these options, can you tell us if any of these issue matter with the real data you will be processing? And, if so, do you need help in figuring out how to make the needed changes to the suggestions you have received so far?
Hi All,
I have a CSV file which is as below. Basically I need to take the year column in it and find if the year is >= 20152 . If that is then I should subtract all values by 6. In the below example in description I am having number mentioned as YYWW so I need to subtract those by -5. Whereever... (8 Replies)
Hi,
I have file with a list of names like this:
dfdsf
ddvc
dsfgf
gfdg
dgfdgt
gfdgdf
I have another file with three columns like this (tab delimited):
wwrwe rgdfg sgfd
dgfd sdgdg dfg
fsss dfgdf sdgfd
Now I want the lines whose 2nd column is not similar to any of the strings in the... (1 Reply)
Legends,
Please help me in , how do i subtract the variable values listed like below.
the first value of orig should be subtracted from first value of prev and so on.
san> echo $orig
346 316 340 239 410 107 291 139 128 230 167 147 159 159 172 116 110 260 177 0 177 169 168 186 165 366 195... (15 Replies)
Hi All,
I have a file of 100 lines of each having 1000 columns. I need to find the difference of each column against each other. That means, Col1-Col1; Col1-Col2; Col1-Col3;......Col1-Col1000; Col2-Col1; Col2-Col2; Col2-Col3;.... and so on ....up to Col1000-Col1000.
Lets say the file is... (6 Replies)
i have a small awk script which prints the 5 columns of different o/p i want the 5th column subtracted from 100 and then display the result .. but i do not get the desired result .. I 'm using following script
awk '
BEGIN {
FS=""
RS="us"
}
{
... (3 Replies)
hi all,
how do i subract variables in shell ?? am trying to space out the headers and the output generated by the shell so they all line up :
currently the output is like this :
servers : users
server1 : 10
latestServer : 50
so i thought... (3 Replies)
Hello,
I am in following situation.-
COUNT=`ls -l | wc -l`
echo $COUNT
---> 26
NO_OF_FILES=$COUNT-1
echo $NO_OF_FILES
---> 26-1
Here, I want the output to be 25. How could I do this. It seems simple, but I am not getting it. Please help me. (2 Replies)
I have looked through the forums and found many date / time manipulation tools, but cannot seem to find something that fits my needs for the following.
I have a log file with date time stamps like this:
Jun 21 17:21:52
Jun 21 17:24:56
Jun 21 17:27:59
Jun 21 17:31:03
Jun 21 17:34:07
Jun... (0 Replies)
I have this idea.
I have a variable for the start of someones log in time,
(start=`who am i | cut -c30-34`)
and a variable for the log out time or present time,
(end=`date | cut -c12-16`)
but how do I go about subtracting them to get the total log in time.
I've tried adding a another variable... (2 Replies)