Tricky Shell script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Tricky Shell script
# 50  
Old 08-17-2007
MySQL

lorcan,
That is working pretty fine.Thanks.

What about the other validations like

1. duplicacy.

I want to add one more validation that is-

The total numbers in a group of six tickets ie(6 rows) must be 90.

Thanks a lot for your help.

Last edited by namishtiwari; 08-17-2007 at 03:47 AM..
# 51  
Old 08-17-2007
CPU & Memory

lorcan,
if i want to find the duplicate records in my input file,what we can do for that.

Thanks
Namish
# 52  
Old 08-17-2007
Code:
sort your_file | uniq -d


You can just add these lines instead of the existing for loop in the script

Code:
sort $inpFile | uniq -d | sed "s/$/& : Duplicate/g"  >> $errFile
for line in $(cat $inpFile | sort | uniq )


Last edited by lorcan; 08-17-2007 at 06:33 AM..
# 53  
Old 08-17-2007
CPU & Memory

Thanks lorcan,

Now 6 rows make a strip and i need to check that the total there are 90 numbers in a strip excluding 00.

Thanks
Namish
# 54  
Old 08-17-2007
You can just create a variable and accumulate the count_fields in the script until it is the 6th line of the file. And check if that is equal to 90.
# 55  
Old 08-17-2007
Lightbulb

The code i put for this is--

for line in $(cat $inpFile | sort | uniq)
do
count_fields=$(echo $line | sed "s/00,*//g;s/,$//g" | wc -c)
stripcheck =$((stripcheck+count_fields))
if [[ $COUNT -eq 6 && $stripcheck -eq 270 ]]
then
echo "The strip has 90 numbers in it"
fi
# 56  
Old 08-17-2007
CPU & Memory

lorcan,
i got these errors when i ran the script now.before it was working fine i can not understand what went wrong with this.

./script1[26]: /tmp/sortfile.txt: cannot create
./script1[27]: /tmp/sortfile.txt: cannot create
./script1[28]: /tmp/sortfile.txt: cannot create
./script1[31]: /tmp/sample1.txt: cannot create
./script1[32]: /tmp/sample2.txt: cannot create
./script1[31]: /tmp/sample1.txt: cannot create
./script1[32]: /tmp/sample2.txt: cannot create
./script1[26]: /tmp/sortfile.txt: cannot create
./script1[27]: /tmp/sortfile.txt: cannot create
./script1[28]: /tmp/sortfile.txt: cannot create
./script1[31]: /tmp/sample1.txt: cannot create
./script1[32]: /tmp/sample2.txt: cannot create
./script1[31]: /tmp/sample1.txt: cannot create
./script1[32]: /tmp/sample2.txt: cannot create
./script1[26]: /tmp/sortfile.txt: cannot create
./script1[27]: /tmp/sortfile.txt: cannot create
./script1[28]: /tmp/sortfile.txt: cannot create
this is in a loop continously.

The inputfile i used is
00,11,21,00,00,55,00,73,83,07,00,22,39,43,00,66,00,00,00,15,00,00,44,58,67,00,87
52,14,24,30,00,00,00,70,00,00,00,00,32,47,50,60,74,00,04,16,27,38,00,00,00,00,89
56,10,00,36,40,00,00,00,80,00,12,25,00,00,51,62,72,00,09,00,00,37,49,00,69,00,84,07
00,10,23,33,00,00,63,00,82,02,00,00,34,40,59,00,77,00,06,16,24,00,00,00,66,00,84
00,14,00,30,43,53,00,73,00,04,00,27,00,48,00,67,00,83,00,19,00,35,00,54,00,74,87
08,00,21,00,44,00,65,72,00,09,17,22,32,00,00,00,00,81,00,00,00,37,46,58,68,76,00,87,65,85
00,12,25,00,00,50,61,00,85,01,15,00,31,00,00,00,79,88,00,00,29,00,41,52,62,00,90
00,00,21,34,00,51,61,00,83,08,18,00,00,43,00,00,78,88,00,00,26,36,00,59,62,79,00
88,12,00,38,42,00,00,00,85,00,13,23,00,00,52,60,74,00,06,00,00,39,44,00,67,00,87,86
03,00,00,00,41,56,00,73,84,04,17,22,32,00,00,00,76,00,00,19,29,00,49,00,64,00,86
77,00,00,30,40,57,00,75,00,00,00,25,37,00,58,68,00,81,00,16,00,00,46,00,69,77,89,12
03,00,24,34,00,50,00,79,00,00,16,00,00,46,54,62,00,90,07,00,28,38,49,00,68,00,00,54
00,12,00,35,00,55,00,70,82,00,13,23,00,48,00,60,00,87,08,00,00,00,00,58,66,71,88
07,00,23,00,46,00,62,00,83,00,10,00,34,47,00,66,72,00,09,13,29,00,00,52,00,00,90,09
00,00,00,31,44,50,67,73,00,04,19,22,32,00,00,00,00,86,06,00,00,00,48,59,69,76,00
11,00,20,30,00,00,65,79,00,03,00,21,00,46,51,00,00,85,07,17,00,33,47,00,00,00,87,87,00
00,14,00,31,00,57,63,70,00,04,00,24,00,45,59,00,00,90,00,15,25,35,00,00,66,71,00
00,12,23,00,48,50,00,00,84,08,00,00,36,00,00,60,73,88,00,16,00,37,49,52,00,75,00
05,00,22,00,00,55,64,00,80,06,11,26,00,41,00,00,72,00,00,13,00,32,00,00,67,78,83
66,11,00,34,41,00,63,00,00,07,00,29,00,00,57,00,72,81,00,15,00,00,49,58,68,76,00,87

I only added these two lines in the code which u suggested.
#for line in $(cat $inpFile)
sort $inpFile | uniq -d | sed "s/$/& : Duplicate/g" >> $errFile
for line in $(cat $inpFile | sort | uniq)
instead of for loop.


Please suggest me something.I am stuck.

Thanks
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Parsing xml - tricky one...need help!!

Hi, i am new to linux programming fraternity but looks like starting with a big thing... yes..xml parsing (it is indeed tough for a beginner like me) so need your kind help... The snippet of xml looks like: <snapshot> <tag1> <key>1234</key> <keytype>abcd</keytype> </tag1> <tag2>... (11 Replies)
Discussion started by: rookie2014
11 Replies

2. Shell Programming and Scripting

Tricky sed required

Hi All I need to put some sed together for a task and its a bit advanced for me, so I thought I'd ask if anyone here could help. I have a csv file with content like this - "","abcde","","" "'","abcde","","" "","","","1234" "'e'","","","" I need to remove any single quotes that fall... (17 Replies)
Discussion started by: steadyonabix
17 Replies

3. Solaris

Tricky egrep

Hi folks! My first post here. I'm working on a script that retrieves a range of files from a list depending on a range of time. UPDATE: I've seen it could be difficult to read all this thing, so I'll make a summarize it.. How come I do this and take a result.. grep "..\:.." lista.new |... (4 Replies)
Discussion started by: kl0x
4 Replies

4. Shell Programming and Scripting

Tricky data manipulation...

Hi everyone.. I am new here, hello.. I hope this doesn't come across to you folks as a stupid question, I'm somewhat new to scripting :) I'm seeking some help in finding a way to manipulate data output for every two characters - example: numbers.lst contains the following output:... (3 Replies)
Discussion started by: explicit
3 Replies

5. Shell Programming and Scripting

Tricky - Need help on Shell script variables

Hi, I have a requirement in which i have to read a csv file and put data in certain set of variables: File content: VP-DTL-REC-CNT, ,854840,0.00,VP-PAID-AMT, ,0,32280885.17,VP-PAT-PAID-AMT, ,0,9930244.32,VP-PAID-REV-CNT, ,484927,0.00,VP-REJ-CNT, ,369913,0.00, , ,0,0.00, , ,0,0.00, , ,0,0.00, ,... (3 Replies)
Discussion started by: shantoshkumar
3 Replies

6. Shell Programming and Scripting

Linux: Writing a tricky script to check connectivity

So, first and foremost, I'm having issues with my internet connection. Periodically, the connection drops across the network. The fix is simple enough: restart the modem. However, this gets old when the connection dies out every hour. I can hit my surfboard on 192.168.100.1, and navigate to a... (5 Replies)
Discussion started by: kungfujoe
5 Replies

7. UNIX for Dummies Questions & Answers

Tricky Quotation Question

Hi, I am at a point in my script where I defined the number of the command line parameter I would like to set a variable equal to: parameter_number=14 I would then like to set a variable equal to the correct parameter: variable=$parameter_number The issue here is that {} is required... (2 Replies)
Discussion started by: msb65
2 Replies

8. Shell Programming and Scripting

Tricky script question

Hi, I'm in the midst of writing a UNIX script that sftp's files to an external host and am stuck with a problem. The problem is that the files created on my server as a order number that correlates to a sequence of directories on the remote host which is where the file should be ftp'ed. ... (3 Replies)
Discussion started by: budrito
3 Replies

9. Shell Programming and Scripting

Tricky Sed

Hello. I am trying to convert occurrences of 'NULL' from a datafile. The 'NULL' occurences appears at this: |NULL| NULL|NULL| NULL|NULL| NULL|NULL| NULL| There should be 52 fields per line. I would like any occurrence of | NULL| or |NULL| to appear as '||' Currently I am using this sed... (2 Replies)
Discussion started by: bestbuyernc
2 Replies

10. Windows & DOS: Issues & Discussions

Tricky one...

Here's my problem: I have a laptop running Windows XP Pro with no internal CD or Floppy drives. I want to install Linux on it. I don't care about the Windows XP Pro installation, in fact I would like to install Linux over the entirety of the HD. However I cannot boot from any external CD drive... (1 Reply)
Discussion started by: saabir
1 Replies
Login or Register to Ask a Question