Imprime cierta línea de archivo

Imprime cierta línea de archivo

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 Nlíneas del archivo, probablemente debería usar solo head:

head -n "$linecount" misspelled

información relacionada