Shell Script for new file name


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Shell Script for new file name
# 1  
Old 12-13-2011
Shell Script for new file name

Hi Experts, I want to write a script in unix for my requirement.
My file contains some headers information in first line and ends the message with EOF.
I want to split the file base on the number of occurances of EOF. for example the if there are 10 EOF in a file then 10 files and name of each file should start with the information in header from some respective positions like 7 T010.

file data is like :
HEADERXXX
...
...
eof

HEADERYYYY
...
....
...
eof

and file name should be
xxx.txt
and yyyy.txt

Please help quickly
# 2  
Old 12-13-2011
This works for me

Code:
perl -e 'while(<>){my @records; if (/^HEADER(.+$)/){open FILE, ">", "$1.txt";print FILE $_;while(<>){print FILE $_; last if /^eof$/;}}}' tmp/test.dat

This User Gave Thanks to Skrynesaver For This Post:
# 3  
Old 12-13-2011
Another one...
Code:
awk '/HEADER/{gsub("HEADER","");file=$0;next}/eof/{file=""}{if(file){print > file}}'  input_file

--ahamed
# 4  
Old 12-13-2011
Hi guys,
when I take substring of a particular data using this command
var=substr($0,11,10)
it comes with spaces, when I am trying to trim the spaces it is not allowing me to do that.
Can you please help me out on that
# 5  
Old 12-13-2011
In what? Awk?

What's the actual input? How are you trying to trim the spaces?
# 6  
Old 12-13-2011
Code:
#!/bin/sh

awk '
BEGIN{ fn = "Test" n ".txt"; n = 1}
{
if (substr($0,1,10) == "FILEHEADER") {
close (fn)
n++
a=substr($0,11,10)
a1=`echo "${a}" | sed 's/ *$//'`
echo "After->[${a1}]"
fn = a ".txt"
}
print > fn
}
' testfile.txt

---------- Post updated at 07:52 AM ---------- Previous update was at 07:51 AM ----------

I am using this script

Code:
#!/bin/sh

awk '
BEGIN{ fn = "Test" n ".txt"; n = 1}
{
if (substr($0,1,10) == "FILEHEADER") {
close (fn)
n++
a=substr($0,11,10)
a1=`echo "${a}" | sed 's/ *$//'`
echo "After->[${a1}]"
fn = a ".txt"
}
print > fn
}
' testfile.txt

and this variable a is coming with spaces

Last edited by Franklin52; 12-13-2011 at 08:56 AM.. Reason: Please use code tags for code and data samples, thank you
# 7  
Old 12-13-2011
Rather than trying to use sed inside awk it would be easier to just use sub, e.g.:
Code:
a1=gsub (" ", "", a)

But, that might not be the best way of doing things. What's in testfile.txt, and what is your expected output?
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell script (sh file) logic to compare contents of one file with another file and output to file

Shell script logic Hi I have 2 input files like with file 1 content as (file1) "BRGTEST-242" a.txt "BRGTEST-240" a.txt "BRGTEST-219" e.txt File 2 contents as fle(2) "BRGTEST-244" a.txt "BRGTEST-244" b.txt "BRGTEST-231" c.txt "BRGTEST-231" d.txt "BRGTEST-221" e.txt I want to get... (22 Replies)
Discussion started by: pottic
22 Replies

2. Shell Programming and Scripting

Shell script to pass the config file lines as variable on the respective called function on a script

I want to make a config file which contain all the paths. i want to read the config file line by line and pass as an argument on my below function. Replace all the path with reading config path line by line and pass in respective functions. how can i achieve that? Kindly guide. ... (6 Replies)
Discussion started by: sadique.manzar
6 Replies

3. Shell Programming and Scripting

Help with Shell Scrip in Masking particular columns in .csv file or .txt file using shell script

Hello Unix Shell Script Experts, I have a script that would mask the columns in .csv file or .txt file. First the script will untar the .zip files from Archive folder and processes into work folder and finally pushes the masked .csv files into Feed folder. Two parameters are passed ... (5 Replies)
Discussion started by: Mahesh G
5 Replies

4. Shell Programming and Scripting

What is the function of the following lines at the top of a shell script file: Directory and Script?

The file starts like this: Directory: <path to the script> Script: <script fife name> #!bin/ksh ##Comments <actual script> What is the use of the first two lines in the script? What if I save the file without them? What will be the effect? They are not comments. Im very new to this,... (4 Replies)
Discussion started by: remytom
4 Replies

5. Shell Programming and Scripting

Shell Script function to use script name for log file output

Hi Team - I"m very new to Shell Scripting so I have a rather novice question. My forte is Windows Batch Scripting so I was just wondering what the Shell Script equivalent is to the DOS command %~n? %~n is a DOS variable that dispayed the script name. For instance (in DOS): REM... (11 Replies)
Discussion started by: SIMMS7400
11 Replies

6. UNIX for Dummies Questions & Answers

Shell script to read lines in a text file and filter user data Shell Programming and Scripting

sxsaaas (3 Replies)
Discussion started by: VikrantD
3 Replies

7. Shell Programming and Scripting

Shell script to call Oracle archive backup script when file system reaches threshold value

Hello All, I need immediate help in creating shell script to call archivebkup.ksh script when archive file system capacity reaches threshold value or 60% Need to identify the unique file system that reaches threshold value. ex: capacity ... (4 Replies)
Discussion started by: sasikanthdba
4 Replies

8. Shell Programming and Scripting

how to read dbf file in shell script and to convert dbf file usinf shell script

Hi all, I am new to shell scripting. I have dbf file and I need to convert it into csv file. OR, can i read the fields from a .dbf file and OR seprate the records in dbf file and put into .csv or txt. Actually in the .dbf files I am getting , the numbers of fields may vary in very record and... (6 Replies)
Discussion started by: gauara
6 Replies

9. Shell Programming and Scripting

(Urgent):Creating flat file using sql script and sqlplus from UNIX Shell Script

Hi, I need help urgently for following issue. Pls help me to resolve this issue. I am calling sql script file(file1.sql) from UNIX Shell Script(script1.ksh) using sql plus and trying to create flat file that contains all records returned from SQL query in SQL script(file1.sql) I given... (6 Replies)
Discussion started by: praka
6 Replies

10. Shell Programming and Scripting

Reading file names from a file and executing the relative file from shell script

Hi How can i dynamically read files names from a list file and execute them from a single shell script. Please help its urgent Thanks in Advance (4 Replies)
Discussion started by: anushilrai
4 Replies
Login or Register to Ask a Question