Sponsored Content
Top Forums Shell Programming and Scripting Shell Sript - Spell Checker Assign Post 302144714 by ccfc1986 on Friday 9th of November 2007 10:46:02 AM
Old 11-09-2007
Shell Sript - Spell Checker Assign

Hi Folks. I am currently working on a script that has to spell check a file and print the output to the screen in 2 columns like this.

INCORRECT CORRECTION
whio who
weahter weather

The file will allow the user to override the ispell command and save any 'incorrect' words as 'correct' into a memory file which would then be used in any other runs of the script (as a dictionary file).

The code i currently have has a problem with it... and i cant figure it out for the life of me. Here is the code/script that i have written so far.


Code:
#!/bin/sh
# script that will spell check a file

#if user tries to quit, will say so, then quit on second attempt
trap "echo You are trying to exit; exit" 2


array=`ispell -l -p $HOME/memory.txt < $1`

correct=()
incorrect=""
let counter=1

for i in $array; do
        read -p "$i is mispelled. Press "Enter" to keep spelling, or type a correction here: " correction
        if [[$correction=""]] ; then
                echo $i >> $HOME/memory.txt
        else
                $correct[$counter]=$correction
        fi
let counter+=1
done

#prints the information
echo "CORRECTION       INCORRECT"
let count=1
for i in $array; do
        echo ${correct[$count]}        $i
let count+=1
done

For this code i get this output while runing:


sh-3.1$ ./wordspell testfile
hellio is mispelled. Press Enter to keep spelling, or type a correction here: hello
./wordspell: line 14: [[hello=]]: command not found
./wordspell: line 17: [1]=hello: command not found
whio is mispelled. Press Enter to keep spelling, or type a correction here: who
./wordspell: line 14: [[who=]]: command not found
./wordspell: line 17: [2]=who: command not found
wheter is mispelled. Press Enter to keep spelling, or type a correction here: weather
./wordspell: line 14: [[weather=]]: command not found
./wordspell: line 17: [3]=weather: command not found
CORRECTION INCORRECT
hellio
whio
wheter

I was wondering how i could sort out the line 14/17 errors. I have thought it would be something like missing () or {} in the array. But still no luck. Any ideas? Also, as you can see i want to print the correction, and the incorrect word (i have 2 arrays set, correct and incorrect which should contain the words for each). How would i get them to print out in columns like i have shown? Once i have this, i have another couple of things to code which im unsure of, but i will try after i get thsi first obstacle out of the way.

Thanks in advance
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell script syntax checker

I have a rather big script that i have written in ksh and it is falling over in two places with a 'test argument' error. I know this usually means that the if statement is not correct, but it is fine. I have looked through the rest of the script for any odd brackets or ` marks, but can't see... (2 Replies)
Discussion started by: handak9
2 Replies

2. Shell Programming and Scripting

spell checker program

2.I need shell script to list all the 'words' in a given file (text) that are not listed in a specified dictionary. Let us call this utility 'spell-check'. 'spell-check' will be called as follows. $ spell-check letter Lucent UNIX UNIX OS a $ dictionary words are listed in lower... (2 Replies)
Discussion started by: ksjanakan
2 Replies

3. UNIX for Dummies Questions & Answers

Shell Sript

Hi All, I have four different files in four different directories. Each file contains exactly the same format logincode Forename Surname TutGroup Mark Basically i want to grab all the marks from each file and put them onto the end of one login code by using a shell script. I can grab all... (3 Replies)
Discussion started by: jazz8146
3 Replies

4. Shell Programming and Scripting

convert the below perl sript to shell script

perl script: my $logdir = '/smp/dyn/logfiles/fsm/mp/mp'; $logdir = $logdir ."/mp${toDate}*"; i tried to make it..as below .. but not working .. date +%m%d%y logdir = /smp/dyn/logfiles/fsm/mp/mp logdir=$logdir/mp"$date" but it was not working..... can someone please help me out in... (1 Reply)
Discussion started by: mail2sant
1 Replies

5. Shell Programming and Scripting

Need your help for the spell checker in unix or python

Hi, Want to know is there any command to correct the spelling using unix or python? Unix command "spell" will give only the list of the incorrect words . But i want the output along with the corrected word . Thanks in advance (1 Reply)
Discussion started by: vini
1 Replies

6. Homework & Coursework Questions

Unix Spell Checker Assignment

hello, im a new member to the forum and im doing a assignment for unix command and we have to make a spell checker and im a little confused about the directions .. ill post them below and continue.. Northern Illinois University CSCI 330-Unix Command Write a shell script that implements a... (1 Reply)
Discussion started by: bravens52
1 Replies

7. Homework & Coursework Questions

spell checker script

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: When "niuspell" is invoked from the command line it reads "file" and checks it for spelling of the words it... (1 Reply)
Discussion started by: Jeffthrow5
1 Replies

8. Shell Programming and Scripting

compare dates using shell sript

I have 2 date feilds 2011-05-13:18:45 2011-05-13:18:30 I need to compare them and say its OK/NOK I tried this but dint work. systime=2011-05-13:18:45 shubtime=2011-05-13:18:30 if then echo" OK" else echo "NOK" fi In this its not same so the o/p should be NOK (2 Replies)
Discussion started by: LavanyaP
2 Replies

9. Shell Programming and Scripting

Help with Bash Shell Script Spell Checker program.

I have a majority of this problem done but seem to be struggling on the last couple of steps. Here is the whole problem to help you guys get a better understanding. Write a shell script that implements a simple spell checker. The filename you will use for your script will be your Z-id followed... (1 Reply)
Discussion started by: DsmRacer2k14
1 Replies

10. Debian

Getting a better spell checker

Guys I am new to Linux in general and want to know what is the use of the following files-: /usr/share/dict/words /usr/share/dict/words.pre-dictionaries-common Are they used by the spell checker to find potential typos ? If so are there any better larger word lists out there ? I am sure... (2 Replies)
Discussion started by: sreyan32
2 Replies
spell(1)						      General Commands Manual							  spell(1)

NAME
spell, spellin, spellout - Finds spelling errors SYNOPSIS
spell [-b] [-i | -l] [-v | -x] [-d hash_list] [-s hash_stop] [-h history_list] [+word_list] [file...] spellin [list] [number] spellout [-d] list The spell command reads words in file and compares them to those in a spelling list. Default files contain English words only, but you can supply your own list of words in other languages. STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: spell: XCU5.0 Refer to the standards(5) reference page for more information about industry standards and associated tags. OPTIONS
[Tru64 UNIX] The following options are for the spell command only. Checks for correct British spelling. Besides preferring centre, colour, programme, speciality, travelled, and so on, this option causes spell to insist upon the use of the infix -ise in words like stan- dardise. [Tru64 UNIX] Specifies hash_list as the alternate spelling list. The default is /usr/lbin/spell/hlist[ab]. [Tru64 UNIX] Speci- fies history_list as the alternate history list that is used to accumulate all output. The default is /usr/lbin/spell/spellhist. [Tru64 UNIX] Suppresses processing of included files through the and troff macros. If the -i and -l options are both specified, the last one of the two options entered on the command line takes effect. [Tru64 UNIX] Follows the chain of all included files (.so and spell(1)
All times are GMT -4. The time now is 12:54 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy