11-14-2009
Using awk to create files based on a variable name
Hey all,
I am parsing a file which have records containing one of a number of files names:
".psd", ".cr2", ".crw" , ".cr", ".xi", ".jpg", ".xif" etc
Somewhere on each line there is a value "Namex.psd" "Namex.crw" etc. The position of this name is highly variable
I need to output all the ".psd" records into a single file called PSD. Each record in the file would be named "Namex".
Ultimately I would have 8 or 9 file names containing 15 thousand records.
The question is how do I output data into records based on the contents of the data?
Your help would be greatly appreciated.
---------- Post updated at 11:30 AM ---------- Previous update was at 11:23 AM ----------
One clarification.
I meant each value in the output file would be Namex.
example
an input record containing "picture_001.psd would be output to a filename called "PSD" and it's value would be "picture_001"
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hello,
I am needing to create a variable and assign it a value based on the value of a previosly defined variable... I am using KSH..
Example:
VAR1=COMPUTER1
I need another variable like ${VAR1}_FLAG="Y", so it would actually be COMPUTER1_FLAG="Y".
I will be looping through many values in... (2 Replies)
Discussion started by: benefactr
2 Replies
2. Shell Programming and Scripting
I would like ot create shell script/ bash to create diffrent files based on a file and parameters list.
Here is the detail example: I have a textfile and four static parameter files (having ‘?'). mainfile.txt has below records (this count may be more than 50)
A200001
A200101
B200001... (9 Replies)
Discussion started by: raghav525
9 Replies
3. UNIX for Advanced & Expert Users
Hey everyone.
I am trying to figure out a way to create a file that will be renamed based off of one of multiple files. For example, if I have 3 files (cat.ctl, dog.ctl, and bird.ctl) that gets placed on to an ftp site I want to create a single file called new.cat.ctl, new.dog.ctl, etc for each... (3 Replies)
Discussion started by: coach5779
3 Replies
4. Shell Programming and Scripting
Need help creating a script that does the following:
Sort a file
Compare the previous line "last field" with current line "last field"
If they are the same, print output to a file
If they are different print output to a new file
The script should keep creating new files if the previous... (5 Replies)
Discussion started by: Muga801
5 Replies
5. Shell Programming and Scripting
Hi All,
I have a file which looks like this:
234422 1 .00222
323232 1 3232
32323 1 0.00222
1234 2 1211
2332 2 0.9
233 3 0.883
123 3 45
As you can see, the second column of the file is already sorted which I did using sort command.
Now, I want to create files based on the second... (1 Reply)
Discussion started by: shoaibjameel123
1 Replies
6. Shell Programming and Scripting
Hi ,
please guide me for a bash script that will create a txt files and the name of the txt files will be as of timestamp so that each file name will be different from other and these files will be get created say after every 10 minutes in a folder(/home/p2000/sxs137), please guide me how would... (1 Reply)
Discussion started by: nks342
1 Replies
7. Shell Programming and Scripting
Hello:
I am working parsing a large input file which will be broken down into multiples based on the second field in the file, in this case: STORE.
The idea is to create each file with the corresponding store number, for example: Report_$STORENUM_$DATETIMESTAMP , and obtaining the... (7 Replies)
Discussion started by: ec012
7 Replies
8. Shell Programming and Scripting
Hello ,
Can anyone please help me to solve the below -
Input.txt
source table abc
col1 char
col2 number
source table bcd
col1 date
col2 char
output should be 2 files based on the row separator "source table"
abc.txt
col1 char (6 Replies)
Discussion started by: Pratik4891
6 Replies
9. UNIX for Beginners Questions & Answers
I have looked through several threads regarding merging files with awk and attempted using join however have been unsuccessful likely as I do not fully understand awk.
What I am attempting is to take a csv file which could be between 1 and 15,000 lines with 5 colums and another csv file that will... (4 Replies)
Discussion started by: cdubu2
4 Replies
10. Shell Programming and Scripting
In the below awk I am trying to mkdir based of an exact match between file2 line starting with R_2019.... and file1 line starting with R_2019. When a match is found there is a folder located at /home/cmccabe/run with the same name as the match where each $2 in file1 is a new subdirectory in that... (2 Replies)
Discussion started by: cmccabe
2 Replies
LEARN ABOUT OPENSOLARIS
igawk
IGAWK(1) Utility Commands IGAWK(1)
NAME
igawk - gawk with include files
SYNOPSIS
igawk [ all gawk options ] -f program-file [ -- ] file ...
igawk [ all gawk options ] [ -- ] program-text file ...
DESCRIPTION
Igawk is a simple shell script that adds the ability to have ``include files'' to gawk(1).
AWK programs for igawk are the same as for gawk, except that, in addition, you may have lines like
@include getopt.awk
in your program to include the file getopt.awk from either the current directory or one of the other directories in the search path.
OPTIONS
See gawk(1) for a full description of the AWK language and the options that gawk supports.
EXAMPLES
cat << EOF > test.awk
@include getopt.awk
BEGIN {
while (getopt(ARGC, ARGV, "am:q") != -1)
...
}
EOF
igawk -f test.awk
SEE ALSO
gawk(1)
Effective AWK Programming, Edition 1.0, published by the Free Software Foundation, 1995.
AUTHOR
Arnold Robbins (arnold@skeeve.com).
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Availability | SUNWgawk |
+--------------------+-----------------+
|Interface Stability | Volatile |
+--------------------+-----------------+
NOTES
Source for gawk is available on http://opensolaris.org.
Free Software Foundation Nov 3 1999 IGAWK(1)