Sponsored Content
Top Forums Shell Programming and Scripting simplify the script, check field match to value in a file Post 302424312 by jimmy_y on Tuesday 25th of May 2010 02:43:03 AM
Old 05-25-2010
simplify the script, check field match to value in a file

Hi Everyone,

Below is the script, i feel there should be more simple way to do the same output, my one works, but feel not nice. like using index i feel it is slow (image my file is very large), maybe awk can do one line code?
Please advice.

Code:
[root@tmp]# cat 1.txt
1 a
2 b
3 cc
4 d

[root@tmp]# cat 1.pl
#!/usr/bin/perl
use strict;
use warnings;

my $str="a,cc";

open(my $FA, "1.txt") or die "$!";
while(<$FA>) {
        my @tmp=split;
        chomp;
        if (index($str, $tmp[1]) ne -1) {
                print "@tmp\n";
        }
}

[root@tmp]# ./1.pl
1 a
3 cc
[root@tmp]#

Thanks
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Script to Match first field of two Files and print

Hi, I want to get script or command in Sun Unix which matches first fields of both the files and print the feilds of one files, example may make it more clear. InputFile1 ================== Alex,1,fgh Menthos,45454,toto Gothica,855,ee Zenie4,77,gg Salvatore,66,oo Dhin,1234,papapa... (3 Replies)
Discussion started by: indian.ace
3 Replies

2. Shell Programming and Scripting

AWK: Pattern match between 2 files, then compare a field in file1 as > or < field in file2

First, thanks for the help in previous posts... couldn't have gotten where I am now without it! So here is what I have, I use AWK to match $1 and $2 as 1 string in file1 to $1 and $2 as 1 string in file2. Now I'm wondering if I can extend this AWK command to incorporate the following: If $1... (4 Replies)
Discussion started by: right_coaster
4 Replies

3. UNIX for Dummies Questions & Answers

Help with AWK - Compare a field in a file to lookup file and substitute if only a match

I have the below 2 files: 1) Third field from file1.txt should be compared to the first field of lookup.txt. 2) If match found then third field, file1.txt should be substituted with the second field from lookup.txt. 3)Else just print the line from file1.txt. File1.txt:... (4 Replies)
Discussion started by: venalla_shine
4 Replies

4. Shell Programming and Scripting

Command/script to match a field and print the next field of each line in a file.

Hello, I have a text file in the below format: Source Destination State Lag Status CQA02W2K12pl:D:\CAQA ... (10 Replies)
Discussion started by: pocodot
10 Replies

5. Shell Programming and Scripting

awk to update field file based on match

If $1 in file1 matches $2 in file2. Then the value in $2 of file2 is updated to $1"."$2 of file2. The awk seems to only match the two files but not update. Thank you :). awk awk 'NR==FNR{A ; next} $1 in A { $2 = a }1' file1 file2 file1 name version NM_000593 5 NM_001257406... (3 Replies)
Discussion started by: cmccabe
3 Replies

6. Shell Programming and Scripting

awk to match field between two files and use conditions on match

I am trying to look for $2 of file1 (skipping the header) in $2 of file2 (skipping the header) and if they match and the value in $10 is > 30 and $11 is > 49, then print the line from file1 to a output file. If no match is foung the line is not printed. Both the input and output are tab-delimited.... (3 Replies)
Discussion started by: cmccabe
3 Replies

7. Shell Programming and Scripting

awk to update field in file based of match in another

I am trying to use awk to match two files that are tab-delimited. When a match is found between file1 $1 and file2 $4, $4 in file2 is updated using the $2 value in file1. If no match is found then the next line is processed. Thank you :). file1 uc001bwr.3 ADC uc001bws.3 ADC... (4 Replies)
Discussion started by: cmccabe
4 Replies

8. Shell Programming and Scripting

Get output of multiple pattern match from first field to a file

Hi All, Greetings! I have a file of 40000+ lines with different entries, I need matching entries filterd out to their files based on first filed pattern for the matching : For example: All server1 entries (in field1) to come together with its path in 2nd field. The best output I want... (9 Replies)
Discussion started by: rveri
9 Replies

9. Shell Programming and Scripting

Perl to update field in file based of match to another file

In the perl below I am trying to set/update the value of $14 (last field) in file2, using the matching NM_ in $12 or $9 in file2 with the NM_ in $2 of file1. The lengths of $9 and $12 can be variable but what is consistent is the start pattern will always be NM_ and the end pattern is always ;... (4 Replies)
Discussion started by: cmccabe
4 Replies

10. Shell Programming and Scripting

Script to check field value from a file records

I need a script to check the records in a file , if any value match transfer the record in error.txt file. 1- If any of the any field value is NULL(nothing in this field) Record1|Record2|Record3|Record4|Record5|DATE1|DATE2 Example: 11111111|22222222|NULL|12|444|27042018|27042018... (8 Replies)
Discussion started by: vivekn
8 Replies
MKLNIM(1)						      General Commands Manual							 MKLNIM(1)

NAME
mklnim - make Linux Netinstall Image SYNOPSIS
mklnim outputfile [path-to-cdrom] DESCRIPTION
mklnim is a shell script that takes a SuSE, TurboLinux or a RedHat CDROM, or equivalent disk directory, and creates a network bootable image (NBI) that can be used with Etherboot (http://etherboot.sourceforge.net/) or Netboot (http://www.han.de/~gero/netboot.html). This NBI, when booted via the network, will make the target computer behave just as if a CDROM boot (TurboLinux), or a floppy boot (RedHat and SuSE) had been selected. A conventional install can be done from this point onwards. There are several occasions when this technique is useful: 1. It can be used to quickly boot a target computer when the floppy loading is very slow. 2. In the case of TurboLinux, it loads the CDROM initial ramdisk which does not require any further floppy loading. In the case of RedHat, it only loads the floppy initial ramdisk which does not contain the material in the supplementary floppy, and may require more floppy insertion. 3. It can start the install from a floppy of any size, not just 1.4 MB, or even from a floppyless machine, if one has a boot ROM (providing no further floppy access is required). 4. It could be used as part of an automatic installation process. Naturally, all this assumes that the infrastructure for diskless booting (bootp and tftp servers) has been set up. BUGS
If supplementary floppies are required, this script doesn't include that material in the network boot image. Please feel welcome to fix this problem. SEE ALSO
Etherboot tutorial at http://etherboot.sourceforge.net/ COPYRIGHT
mklnim is under the GNU Public License AUTHOR
Ken Yap (ken_yap@users.sourceforge.net) DATE
Version 0.4 April 2000 25 April 2000 MKLNIM(1)
All times are GMT -4. The time now is 02:05 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy