Calling a substring from another file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Calling a substring from another file
# 1  
Old 06-09-2008
Calling a substring from another file

I have two files:

One is a list of numbers:

1
5
6
7
10

The second is a very long string

abcdefghijklmno......1234567890


I'd like to print a new file with a 5 character substring that starts at each the positions listed in the 1st file:

such as:

abcde
efghi
fghij
ghijk
jklmno

I've attempted a few While and If loops but can't seem to get the syntax correct.

Thank you.
# 2  
Old 06-10-2008
Quote:
Originally Posted by dcfargo
I've attempted a few While and If loops but can't seem to get the syntax correct.
Next time post your code, like that we can see where exactly are you stuck?
Here is the solution using awk.
Code:
awk '
      NR==FNR{
             a[NR]=$0
             next
             }
             {
              for(i=1;i<NR;i++) 
                  print substr($0,a[i],5)
             }
' file1 file2 > file3

# 3  
Old 06-10-2008
Thank you

Thanks so much that works great. I'm sorry about not posting my code. I'm new. I'll post the code next time.

Cheers!Smilie
# 4  
Old 06-10-2008
No need to use awk. Can be all done within your shell if using a modern shell such as ksh93, bash or zsh.
Code:
#!/usr/bin/ksh93

while read pos; do
   print ${1:$pos-1:5}
done < file1

# 5  
Old 06-10-2008
No need to use awk. Can be all done within your shell if using a modern shell such as ksh93, bash or zsh.
Code:
#!/usr/bin/ksh93

read file2

while read pos; do
   print ${file2:$pos-1:5}
done < file1

Code:
cat file2 | ./shellscript

or with no use of cat
Code:
./shellscript < file2


Last edited by fpmurphy; 06-10-2008 at 09:09 PM..
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Extract a substring from a file

Hello, A question please. A have a file that contains a string. Ex: AAAABBCCCCCDDEEEEEEEEEEFF I'd want to recover 2 substrings, 'BB' and 'FF' and then leave them in a new file. From position 5, 2 caracters (ex:"BB") and from position 25, 2 caracters (ex:"FF") in a file. Could anoyone help me... (3 Replies)
Discussion started by: nolo41
3 Replies

2. Shell Programming and Scripting

Extract substring in a file

Hello, A question please. A have a file that contains a string. Ex: AAAABBCCCCCDDEEEEEEEEEEFF I'd want to recover 2 substrings, 'BB' and 'FF' and then leave them in a new file. Could anoyone help me please? Thanks in advance (3 Replies)
Discussion started by: nolo41
3 Replies

3. UNIX for Dummies Questions & Answers

Deleting file basing on the timestamp substring in the file name

Hello, I have in my backup folder, files with names convention like this : randomFileNames_13-02-2014_23h13m09+1392333189 randomFileNames_14-02-2014_02h13m09+1392343989 randomFileNames_14-02-2014_04h13m09+1392351189 etc.... Base on timestamp at end of the filename, I would to delete all the... (7 Replies)
Discussion started by: thuyetti
7 Replies

4. Shell Programming and Scripting

Get Substring from file name.

Hi, In my shell script. I am reading all files in directory. And say if the file names are as follows: adio_idfl_201302_df.txt dfa_201301_dll.ctl dalkd_20130301.csv I would like to extract the numeric piece of each file name and display as follows: 201302 201301 20130301 I... (9 Replies)
Discussion started by: pinnacle
9 Replies

5. Shell Programming and Scripting

Substring from the file name

Hi I need substring from the file name of list of files. I mean i will have to load all the files into database which are there in the Directory. I need to make the directory with the date(which is substring of the filename Eg: Filename_Name_2012013001010101.txt, So the directory should be... (11 Replies)
Discussion started by: cnrj
11 Replies

6. Shell Programming and Scripting

Using sed to find a substring from a file

HI All, I have a file which looks like below ./Prod_id/rel/prod/lib.a ./Some_text/rel/fld/lib.a ./Some_text/deb/detail/lib.a ./Some_text/deb/err/lib.a ./Some_text/rel/prod/lib.a ./Some_text/rel/fld/lib.a ./Some_text/deb/detail/lib.a ./Some_text/deb/err/lib.a I want... (5 Replies)
Discussion started by: anand.shah
5 Replies

7. Shell Programming and Scripting

Get value of substring from a file

Hi, I have a file with a long string, in the format: name1=value,name2=value2.....namen=valuen I want to query the file and extract 'value2' ONLY. name2=value2 can exist anywhere within the file. Can anyone help me please wth a suitable BASH command? Many thanks, Matt (4 Replies)
Discussion started by: mjwoodford
4 Replies

8. Shell Programming and Scripting

How do I pull a substring out of a file?

I'm new to shell scripting and am trying to write a small script that pulls a substring out of a file that has a few lines of text in it. The file will eventually have a lot of text, I just put a few lines in it for testing purposes. Anyway, this is what I have so far... #!/bin/ksh ... (4 Replies)
Discussion started by: enator45
4 Replies

9. Shell Programming and Scripting

Help on substring of file list

Hi, I have a folder list as below, I want to write a script to return a list like: CASTLE_BU_20080801 CAUSEWAY_BU_20080801 HUNGHOM_BU_20080801 : : Can anyone help? Thanks! Victor Cheung List of the folder: # ls CASTLE_BU_20080801.DMP OFFICE_MY1_BU_20080801.DMP... (1 Reply)
Discussion started by: victorcheung
1 Replies

10. Shell Programming and Scripting

extracting substring from a file name

hi i need to name a file with a substring of a another file name. i.e. if the old filename is abc.txt , the new filename should be abc_1.txt i should get the substring of the file name and then name the new one please let me know how to do it (4 Replies)
Discussion started by: adityamahi
4 Replies
Login or Register to Ask a Question