Script Shell Extract substring


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Script Shell Extract substring
# 1  
Old 06-27-2015
Script Shell Extract substring

Hi all,

Please, i'd like to extract string just before '.fr'.
Here is some lines of my file:

Code:
g-82.text.text1.fr.worker1
g-xx.yyyyyy.zzzz.fr.worker2

i'd like to extract this text:

Code:
g-82.text.text1
g-xx.yyyyyy.zzzz

Please, which command i have to use in my script shell ?

Thank you much.
Best Regards.
# 2  
Old 06-27-2015
Hi, if its bash, this should work fine:
Code:
while read input
do  echo "${input/.fr.*}"
done<file

Prints:
Code:
g-82.text.text1
g-xx.yyyyyy.zzzz

hth

EDIT:
And to illustrate the substitution:
Code:
PATTERN=".fr."
VARIABLE="g-xx.yyyyyy.zzzz.fr.worker2"
echo "${VARIABLE/$PATTERN}"

Using a single / in ${VARIABLE}, removes the following pattern, including *?. expansion, unless quoted or escaped
Using two // will replace the the 1nd pattern string with the 2nd pattern string.
Example:
Code:
echo "${VARIABLE/$SEARCH/$REPLACE}"

However, this will only apply to the first found occourence!

Last edited by sea; 06-27-2015 at 12:51 PM..
This User Gave Thanks to sea For This Post:
# 3  
Old 06-27-2015
And, with any POSIX-conforming shell (e.g., ash, bash, dash, ksh, etc.) you could use:
Code:
while read -r input
do	echo "${input%.fr.*}"
done<file

or with sed:
Code:
sed 's/[.]fr[.].*//' file

or with awk:
Code:
awk '{sub(/[.]fr[.].*/, "")}1' file

or ...
This User Gave Thanks to Don Cragun For This Post:
# 4  
Old 06-27-2015
You could use :

Code:
sed 's/\(.fr.*\)//g' file

HTH
# 5  
Old 06-27-2015
Quote:
Originally Posted by Mannu2525
You could use :

Code:
sed 's/\(.fr.*\)//g' file

HTH
No.

With an input line like:
Code:
g-xx.Africa.zzzz.fr.worker3

the above sed command would produce the output:
Code:
g-xx.

instead of the requested:
Code:
g-xx.Africa.zzzz

In a filename matching pattern, . matches a period. But in a basic regular expression (which is what is used in sed), an unadorned . matches any single character.
# 6  
Old 06-27-2015
Quote:
Originally Posted by Mannu2525
You could use :
Code:
sed 's/\(.fr.*\)//g' file

HTH
A few things you might want think about:
\(\): you are telling to capture the matched part. Since you are not using it, it is a waste of effort.
g: matching as many times as possible in a line, is not the intention in this case.
# 7  
Old 06-27-2015
How about

Code:
$ cat > tmp
g-82.text.text1.fr.worker1
g-xx.yyyyyy.zzzz.fr.worker2


$ awk -F".fr" '{print $1}' tmp
g-82.text.text1
g-xx.yyyyyy.zzzz

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Substring check in IF condition in shell script

I want to check if the string has the substring in IF condition then process... i tried below but not working if ]; then ............. field can be "reserved1" ....reservedn / fillspaces1 ... fillspacesn (4 Replies)
Discussion started by: greenworld123
4 Replies

2. Shell Programming and Scripting

Need help with Korn Shell script for substring printing

Hi all, I am new to scripting. I have a file with colon separated values called mylist.txt cat mylist.txt 192.123.76.89:lmprod89 162.122.20.28:lmtstserver28 10.80.32.139:hewprod139 . . using our internal os utility (called mvsping) we need to check all these servers if they are... (6 Replies)
Discussion started by: kraljic
6 Replies

3. Shell Programming and Scripting

using substring in shell script

This is the data I am having in a file Just for sample I have given 3 records. The file which I am having consists of n number of records. ABC123 10 01/02/2008 2008-01-03-00.00.00.000000 DYUU 22 02/03/2008 2008-01-04-00.00.00.000000 RF33 88 03/05/2008 2008-01-05-00.00.00.000000 ... (24 Replies)
Discussion started by: kmanivan82
24 Replies

4. Shell Programming and Scripting

Substring in shell script

I need a help in getting substring of each line in input file. I am writing a script that will read a file from a directory on daily basis, I mean everyday a new file will be stored in this directory, it will replace old file. I have to read contents of this file, the contents will be as... (5 Replies)
Discussion started by: jyotib
5 Replies

5. Shell Programming and Scripting

Using Awk in shell script to extract an index of a substring from a parent string

Hi All, I am new to this shell scripting world. Struck up with a problem, can anyone of you please pull me out of this. Requirement : Need to get the index of a substring from a parent string Eg : index("Sandy","dy") should return 4 or 3. My Approach : I used Awk function index to... (2 Replies)
Discussion started by: sandeepms17
2 Replies

6. UNIX for Dummies Questions & Answers

Substring in Shell Script

Hi I'm new to Shell scripting. Someone please help me in extracting a portion of string from a file. Eg: I got a file like, Readme.txt and has the following name value pairs input1 : /homes/input1/ input2 : /homes/input2/ ... ... When I give the parameter input1, the value... (3 Replies)
Discussion started by: smartbuddy
3 Replies

7. Shell Programming and Scripting

command/script to extract a substring from a string

I have a long string "<ID type="Oid">{}</ID>" I need to extract "GigabitEthernet0/1" from the above string. How can it be done? :) (5 Replies)
Discussion started by: girisha
5 Replies

8. UNIX for Dummies Questions & Answers

Substring function in UNIX shell script

Hi All, Following is the output of a find commnd to locate log directories for various projects of UNIX AIX box: /home/hbinz6pf/projectlibs/dpr_pfsdw_dev/&PH& /opt/tools/ds/Template/&PH& /data/ds/ms/hmsdw/projectlibs/dpr_ms_dev/&PH& /data/ds/riskmi/projectlibs/dpr_riskmi_dev/&PH&... (5 Replies)
Discussion started by: csrazdan
5 Replies

9. Shell Programming and Scripting

Substring function in UNIX shell script

Hi All, Following is the output of a find commnd to locate log directories for various projects of UNIX AIX box: /home/hbinz6pf/projectlibs/dpr_pfsdw_dev/&PH& /opt/tools/ds/Template/&PH& /data/ds/ms/hmsdw/projectlibs/dpr_ms_dev/&PH& /data/ds/riskmi/projectlibs/dpr_riskmi_dev/&PH&... (1 Reply)
Discussion started by: csrazdan
1 Replies

10. Shell Programming and Scripting

Substring in C shell script?

i am a new user of C-shell script. I want to know can i create a substring in a string. That means when i got a variable $input = "it is number 2" I want to get the "2" to be another variable. Can i do that in C-shell and how to ? Thank you so much dinodash (0 Replies)
Discussion started by: dinodash
0 Replies
Login or Register to Ask a Question