#!/bin/bash
x=${1:-0}
if [ $x -lt "0" ]
then
x=$[-1*$x]
x=$[$x%27]
x=$[27-$x]
fi
x=$[$x%27]
awk -v a="$x" -f /home/maciek/Pulpit/awk/awek /home/maciek/Pulpit/awk/tekst
#awek
{
tekst=$0
klucz="abcdefghijklmnopqrstuvwxyz "
split(klucz,ktab,"")
dlugosc=split(tekst,ttab,"")
i=0
while(i<dlugosc)
{
i++
ttab[i]=ktab[(index(klucz,ttab[i])+a)%27]
}
print(i)
print(dlugosc)
i=0
ntekst=""
while(i<dlugosc)
{
i++
ntekst=ntekst ttab[i]
print(ntekst)
print(ttab[i])
print(i)
}
}
Właśnie próbuję napisać podstawkę pod deszyfrator cezara w awk.
Program powinien wziąć tekst, rozbić go do tablicy, po czym połączyć i wypisać na ekran.
Problem polega na tym że, kiedy awk trafi na spację, albo wrzuca do tablicy puste miejsce, albo wypisuje z pod znaku spacji puste miejsce.
Proszę o pomoc :')