Minor comment to Don's fine proposal: replacing the s[NR] assignment with
would get rid of the BEGIN ning split and (maybe) enhance reability.
Using (++c[$1]>26 ? 34 : c[$1]+96) would render the separate -* assignment redundant.
Hi Rudi,
Thanks for the comments.
I added the if(c[$1] > 26) s[NR] = "-*" as an afterthought after I saw message #11 in this thread. If I had thought about overflowing 26 (even though the early messages said there would be no more than 9) when I started writing the script I would have done it differently. Looking at it again now, I would certainly add comments and make the code even tighter.
If I were only writing code for a particular system (that used code sets based on ASCII) I might consider using something like:
except I would have used 42 (or more likely "*") instead of 34 (which is the ASCII double-quote (") character). Note however that this won't work on IBM mainframe AIX (or any other system using code sets based on EBCDIC) even if you change the 34 and 96 to the corresponding EBCDIC characters since the lowercase alphabetic characters are not all in contiguous locations.
If I were going to do this script now, I would use:
Hi all,
I had written 3 KSH scripts for different functionalities. In all these 3 files there are some 30 variables in common. So I want to reduce the code by placing these variables in a common properties file named (dataload.prop/dataload.parms/dataload.txt) or txt file and access it... (1 Reply)
I'm writing a bash script and i'm stuck
the out put of a dialog menu is
echo $select
"foo" "bar" "lemon" cheese"
while I need
$foo $bar $lemon $cheese
to reuse them as strings later in the script
and very new to bash scripting and i've no idea how to do this
any help would be... (2 Replies)
Well thanks a lot but I have another Problem
I try to solve.
I habe one simple Textfile
with entries like this, for example:
file1
file2
file3
file4
...
file200
And I want to add Strings at the beginning on the line.
Like this
word1 file1
word1 file2
...
I hope you can help me (3 Replies)
Hi all,
I have a positional text file that comes from some source application. Before it is processed by destination application I have to add some header (suffix) to every record(line) in the file.
e.g.
Actual File
...............
AccountDetails
AcNO Name Amount
1234 John 26578
5678... (3 Replies)
Hi.
I have a for loop that I use to extract integer values in a shell script (ksh). Now, I would like to add the values. My preference, from my c programming days, would be to do something like the commented out line below in the for loop. However, this is not recognised. So I use the line... (2 Replies)
I should preface this by saying I have never worked with shell scripts before so this is all new to me. I was able to make something that worked, but is terribly optimized, and I have no idea how to improve it. If anything it's a pretty hilarious script:
#/bin/bash
get_char() {
... (4 Replies)
All,
I have a sample text like below.
Key (Header)
Key1
ABC
Key2
ABC
Key3
ABC
ABC
Key4
ABC
Key5
ABC
ABC
ABC
Required Output
Key (Header)
Key1 (2 Replies)
Hello:
I have some text output, on SunOS 5.11 platform using KSH:
I am trying to parse out each string within the () for each line.
I tried, as example:
perl -lanF"" -e 'print "$F $F $F $F $F $F"'
But for some reason, the output gets all garbled after the the first fields.... (8 Replies)
I have a text file in the following format
>Homo sapiens
KQKCLYNLPFKRNLEGCRERCSLVIQIPRCCKGYFGRDCQACPGGPDAPCNNRGVCLDQY
SATGECKCNTGFNGTACEMCWPGRFGPDCLPCGCSDHGQCDDGITGSGQCLCETGWTGPS
CDTQAVLPAVCTPPCSAHATCKENNTCECNLDYEGDGITCTVVDFCKQDNGGCAKVARCS... (2 Replies)