Sponsored Content
Top Forums Shell Programming and Scripting Find redundant text in a file Post 302578957 by hbar on Saturday 3rd of December 2011 10:37:59 AM
Old 12-03-2011
Sorry I didn't get any output !

Suppose I have a file called test.sh

cat test.sh

gives

abc dfg
ecd xkl mno
abc
dfg asj kllll
jkl p
dfg
o

Now you see 'abc' is repeated in the 1st and 3rd line.

'dfg' is repeated in 1st, 4th, and 5th line.

I may expect to see 'abc' and 'dfg' to be printed out on the screen with highlights in the corresponding lines or something similar.

I have attached the sample file.

Thanks.

Code:
abc   dfg
ecd  xkl mno
abc  
dfg  asj kllll 
jkl  p
dfg
o


Last edited by Scott; 12-03-2011 at 11:40 AM.. Reason: Please don't attach 59-byte files. No-one wants that in their Downloads folder.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

to check redundant file names

hi i have a very simple problem iam moving files from download to archive folder but before such a transfer want to make sure no two file of same are present in my download directory how to check for redundant file names i thought of using WC but it counts inside the file (lines and... (5 Replies)
Discussion started by: maverick
5 Replies

2. Shell Programming and Scripting

How to find Duplicate Records in a text file

Hi all pls help me by providing soln for my problem I'm having a text file which contains duplicate records . Example: abc 1000 3452 2463 2343 2176 7654 3452 8765 5643 3452 abc 1000 3452 2463 2343 2176 7654 3452 8765 5643 3452 tas 3420 3562 ... (1 Reply)
Discussion started by: G.Aavudai
1 Replies

3. UNIX for Dummies Questions & Answers

How to find exact text in file ?

I have file named shortlist , and it contains this: 2233|charles harris |g.m. |sales |12/12/52| 90000 9876|bill johnson |director |production|03/12/50|130000 5678|robert dylan |d.g.m. |marketing |04/19/43| 85000 2365|john woodcock |director |personnel... (1 Reply)
Discussion started by: Cecko
1 Replies

4. Shell Programming and Scripting

find a string in a file and add some text after that file

Hi Could you please help me out by solving teh below problem ? I have a file with as below source1|target1|yes source2|target2|no source1 is file in which i have to place some code under the <head> tag in it. What code i have to place in source1 is something like this "abcd.....<target1>... (5 Replies)
Discussion started by: Tasha_T
5 Replies

5. Shell Programming and Scripting

Find ^Z in a unix text file

Hi Everybody, I have an unknown number of files that for some reason contain the ^Z character. I would need a command that helps me identifying these files. Here is an example of a line: JUAN HERN^ZNDEZ I would greatly appreciate your help. Thanks in advance, Sebastian (3 Replies)
Discussion started by: hhoosscchhii
3 Replies

6. Shell Programming and Scripting

Find string in text file

Hello! Please, help me to write such script. I have some text file with name filename.txt I must check if this file contains string "test-string-first", I must cut from this file string which follows string "keyword-string:" and till first white-space and save it to some variable. For... (3 Replies)
Discussion started by: optik77
3 Replies

7. Shell Programming and Scripting

How to find numbers in text file?

Hi I have a text file with rows like this: 7 Herman ASI-40 Jungle (L) Blueprint (L) Weapon Herman ASI-40 Jungle (L) 215.00 57 65.21 114.41 and 9 Herman CAP-505 (L) Blueprint (L) Weapon Herman CAP-505 (L) 220.00 46.84 49.1 104.82 and 2 ClericDagger 1C blueprint Melee - Shortblade... (2 Replies)
Discussion started by: pesa
2 Replies

8. UNIX for Dummies Questions & Answers

Find text in file

Hello i a script: #!/bin/sh count=0 for iname in `cat mysong` do for cname in `cat mysong` do if then count=`expr $count + 1` fi done echo "word: $iname - found in the text: $count times" count=0 donethe proplem: how i... (2 Replies)
Discussion started by: levitmic
2 Replies

9. Shell Programming and Scripting

Reduce redundant file

Dear All, I have to reduce the redundancy of a file that is like this: a b 0 a c 0 a f 1 b a 1 b a 0 b c 1 d f 0 g h 1 f d 1 Basically, this file describe a network with relative nodes and edges. The nodes are the different letters and the edges are represented by the numbers (in... (7 Replies)
Discussion started by: giuliangiuseppe
7 Replies

10. UNIX for Beginners Questions & Answers

Find and replace a string in a text file

Dear all, I want to find all the "," in my text file and then replace the commas to a tab. I found a script online but I don't know how to modify the script for my case. Any one can help? Thank you. @echo off &setlocal set "search=%1" set "replace=%2" set "textfile=Input.txt" set... (2 Replies)
Discussion started by: forevertl
2 Replies
PREG_REPLACE(3) 							 1							   PREG_REPLACE(3)

preg_replace - Perform a regular expression search and replace

SYNOPSIS
mixed preg_replace (mixed $pattern, mixed $replacement, mixed $subject, [int $limit = -1], [int &$count]) DESCRIPTION
Searches $subject for matches to $pattern and replaces them with $replacement. PARAMETERS
o $pattern - The pattern to search for. It can be either a string or an array with strings. Several PCRE modifiers are also available. o $replacement - The string or an array with strings to replace. If this parameter is a string and the $pattern parameter is an array, all pat- terns will be replaced by that string. If both $pattern and $replacement parameters are arrays, each $pattern will be replaced by the $replacement counterpart. If there are fewer elements in the $replacement array than in the $pattern array, any extra $pat- terns will be replaced by an empty string. $replacement may contain references of the form \ n or (since PHP 4.0.4) $ n, with the latter form being the preferred one. Every such reference will be replaced by the text captured by the n'th parenthesized pattern. n can be from 0 to 99, and \0 or $0 refers to the text matched by the whole pattern. Opening parentheses are counted from left to right (starting from 1) to obtain the number of the capturing subpattern. To use backslash in replacement, it must be doubled ( "\\" PHP string). When working with a replacement pattern where a backreference is immediately followed by another number (i.e.: placing a literal number immediately after a matched pattern), you cannot use the familiar \1 notation for your backrefer- ence. \11, for example, would confuse preg_replace(3) since it does not know whether you want the \1 backreference followed by a literal 1, or the \11 backreference followed by nothing. In this case the solution is to use ${1}1. This creates an isolated $1 backreference, leaving the 1 as a literal. When using the deprecated e modifier, this function escapes some characters (namely ', ", and NULL) in the strings that replace the backreferences. This is done to ensure that no syntax errors arise from backref- erence usage with either single or double quotes (e.g. 'strlen('$1')+strlen("$2")'). Make sure you are aware of PHP's string syntax to know exactly how the interpreted string will look. o $subject - The string or an array with strings to search and replace. If $subject is an array, then the search and replace is performed on every entry of $subject, and the return value is an array as well. o $limit - The maximum possible replacements for each pattern in each $subject string. Defaults to -1 (no limit). o $count - If specified, this variable will be filled with the number of replacements done. RETURN VALUES
preg_replace(3) returns an array if the $subject parameter is an array, or a string otherwise. If matches are found, the new $subject will be returned, otherwise $subject will be returned unchanged or NULL if an error occurred. ERRORS
/EXCEPTIONS As of PHP 5.5.0 E_DEPRECATED level error is emitted when passing in the "e" modifier. As of PHP 7.0.0 E_WARNING is emited in this case and "e" modifier has no effect. CHANGELOG
+--------+---------------------------------------------------+ |Version | | | | | | | Description | | | | +--------+---------------------------------------------------+ | 7.0.0 | | | | | | | Support for the /e modifier has been removed. | | | Use preg_replace_callback(3) instead. | | | | | 5.5.0 | | | | | | | The /e modifier is deprecated. Use | | | preg_replace_callback(3) instead. See the | | | PREG_REPLACE_EVAL documentation for additional | | | information about security risks. | | | | | 5.1.0 | | | | | | | Added the $count parameter | | | | +--------+---------------------------------------------------+ EXAMPLES
Example #1 Using backreferences followed by numeric literals <?php $string = 'April 15, 2003'; $pattern = '/(w+) (d+), (d+)/i'; $replacement = '${1}1,$3'; echo preg_replace($pattern, $replacement, $string); ?> The above example will output: April1,2003 Example #2 Using indexed arrays with preg_replace(3) <?php $string = 'The quick brown fox jumped over the lazy dog.'; $patterns = array(); $patterns[0] = '/quick/'; $patterns[1] = '/brown/'; $patterns[2] = '/fox/'; $replacements = array(); $replacements[2] = 'bear'; $replacements[1] = 'black'; $replacements[0] = 'slow'; echo preg_replace($patterns, $replacements, $string); ?> The above example will output: The bear black slow jumped over the lazy dog. By ksorting patterns and replacements, we should get what we wanted. <?php ksort($patterns); ksort($replacements); echo preg_replace($patterns, $replacements, $string); ?> The above example will output: The slow black bear jumped over the lazy dog. Example #3 Replacing several values <?php $patterns = array ('/(19|20)(d{2})-(d{1,2})-(d{1,2})/', '/^s*{(w+)}s*=/'); $replace = array ('3/4/12', '$1 ='); echo preg_replace($patterns, $replace, '{startDate} = 1999-5-27'); ?> The above example will output: $startDate = 5/27/1999 Example #4 Strip whitespace This example strips excess whitespace from a string. <?php $str = 'foo o'; $str = preg_replace('/ss+/', ' ', $str); // This will be 'foo o' now echo $str; ?> Example #5 Using the $count parameter <?php $count = 0; echo preg_replace(array('/d/', '/s/'), '*', 'xp 4 to', -1 , $count); echo $count; //3 ?> The above example will output: xp***to 3 NOTES
Note When using arrays with $pattern and $replacement, the keys are processed in the order they appear in the array. This is not neces- sarily the same as the numerical index order. If you use indexes to identify which $pattern should be replaced by which $replace- ment, you should perform a ksort(3) on each array prior to calling preg_replace(3). SEE ALSO
PCRE Patterns, preg_quote(3), preg_filter(3), preg_match(3), preg_replace_callback(3), preg_split(3), preg_last_error(3). PHP Documentation Group PREG_REPLACE(3)
All times are GMT -4. The time now is 07:44 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy