Word too long!

D

doncapo

Grünschnabel
Hallo, wie bei einem anderen Problem in einem anderen Thread bereits gesagt, sitze ich momentan einer Uni-Hausaufgabe. Hierbei sollen die Häufigkeiten des Auftretens kleiner Buchstaben gezählt werden. Mein bisheriges Problem habe ich in den Griff bekommen, jedoch stehe ich nun vor dem nächsten: Wenn ich die vorgesetzte Datei über Argument in das Skript gebe, bekomme ich die Fehlermeldung "Word too long!". Anderen Foren konnte ich entnehmen, dass wohl die Variable in die der Text geladen wird nicht so viele Zeichen aufnehmen könnte. Wenn ja, wie kann ich es trotzdem bewerkstelligen, das mein Skript läuft?

Vielen Dank im Voraus und hier das Skript:
Code:
#! /bin/csh
# Usage: source count $arg1
# Defintionen
set text = `cat $argv[1] | sed 's/[!;?;,;.;:;";";" ";\n;\t]*//g'`
set text = `echo $text | tr ' ' ',' | sed 's/,//g'`
set textUmfang = `echo $text | wc -c`
@ textUmfang = $textUmfang - 1 
set gezBuchst = 0
set chars = (a b c d e f g h i j k l m n o p q r s t u v w x y z) 
set bigChars = (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z)
set lettersC
set letters 
set allrels
@ j = 1 
# Großbuchstaben in Kleinbuchstaben umwandeln
foreach i ($bigChars[*])
   set text = `echo $text | tr -t $i $chars[$j]`
   @ j++
end
echo $text   
@ j = 1

# Berechnung der Haeufigkeiten
echo Haeufigkeiten
foreach i ($chars[*]) 
   set buchstabenAnz = `echo $text | tr -d $i | wc -c`
   @ buchstabenAnz = $textUmfang - ($buchstabenAnz - 1) 
   if ($buchstabenAnz != 0) then 
      echo "$i\t$buchstabenAnz"
      @ gezBuchst = $gezBuchst + $buchstabenAnz
      set letters = ($letters $i)
      set lettersC = ($lettersC $buchstabenAnz)
   endif
end
echo "Gezaehlte Kleinbuchstaben insgesamt:$gezBuchst"

# Berechnung der relativen Haeufigkeiten
echo Relative Haeufigkeiten
foreach i ($letters[*])
   @ relC = ($lettersC[$j] * 100) / $gezBuchst
   echo "$i\t$relC %"
   @ allrels = $allrels + $relC 
   @ j++
end
echo "Checkup: $allrels %"
 

Ähnliche Themen

ip6tables Problem

Wie komme ich an den Inhalt des Inhalts einer Variable?

[Gelöst] Suchen und ersetzen mit Hilfe mehrerer Parameter

Shellskript - Fehler in Cron

Queue für copy Script

Zurück
Oben