
Estoy intentando imprimir todas las palabras mal escritas (que es "rools hatte").
Pero me sigue dando el error
sed: -e expresión #1, carácter 17: comando `s' sin terminar
Probé diferentes formas que encontré en este sitio web y en otros lugares, pero siempre aparece este error de todos modos.
linecount="$(wc -l < misspelled)"
echo -e "MISSPELLED: \t\t\t CORRECT:"
for NUM in 'seq $linecount'
do
sed "${NUM}q;d" misspelled
done
Respuesta1
Tienes el tipo incorrecto de citas seq $linecount
. Tiene comillas simples, lo que hace que toda la frase se trate como una sola cadena. Si desea ejecutarlo y utilizar los resultados que desea, comillas invertidas:
`seq $linecount`
o, mejor ahora, usa la $(...)
sintaxis que hace lo mismo
for num in $(seq $linecount)
o puedes hacerlo sin el otro programa:
num=1
while [ "$num" -le "$linecount" ]; do
...
((num=num+1))
done
Si está intentando imprimir las primeras N
líneas del archivo, probablemente debería usar solo head
:
head -n "$linecount" misspelled