Como posso dividir uma string em um caractere de controle no ksh?

Como posso dividir uma string em um caractere de controle no ksh?

Preciso dividir uma string em um caractere de feed de formulário (\x0c) e então:

  1. produza a parte anterior
  2. faça alguma lógica
  3. produza a parte depois dela.

Estou preso kshpor enquanto.

Tentei definir IFS=\x0Ce ler a string em 2 variáveis, mas não consegui encontrar o delimitador, com ou sem aspas, e coloquei a string inteira, incluindo o delimitador, na primeira variável.

o que estou perdendo?

Responder1

Com:

IFS=\x0C

você configurou IFSpara string x0C, não para formfeed \f.

Em ksh(e também bash, zsh, mksh), você pode usar:

IFS=$'\f'

ou POSIXMENTE:

IFS=$(printf \\f)

informação relacionada