Este é um comportamento perfeitamente normal (ou seja, não um erro) em bash
em shells similares: Ctrl-Z suspende programas e retorna o controle para o shell pai. A execução do programa - vi
no seu caso - será interrompida nesse meio tempo. Você pode digitar fg
para retomar a execução.
O motivo pelo qual você está recebendo erros no arquivo de troca é porque agora você tem várias instâncias de vi
editando simultaneamente o mesmo arquivo; Todo o propósito dos arquivos de swap é chamar a atenção para esses cenários, porque quase nunca é o que você quer que aconteça.
Como parece que você tem um monte de vi
instâncias abertas (7 delas - é o que o [7] + indica), provavelmente é melhor apenas fechá-las normalmente uma por uma: digite fg
para abrir a última instância e, em seguida, pressione Escape e digite :q!
para fechá-lo normalmente. Repita até que fg
diga "nenhum trabalho assim". Em seguida, remova todos os arquivos de troca que ainda possam existir ( rm /etc/xinetd.d/.tftp.sw*
) e abra o arquivo novamente. Em vi
, o comando para gravar e sair de um arquivo é Escape + :wq
. O comando para desfazer uma mudança (que meu instinto me diz é provavelmente por que você estava pressionando Ctrl-Z) é Escape + u
.
vi
é um chamado editor em modo : no modo normal (que é acessado pressionando Escape), as teclas simples são mapeadas para os comandos. No modo de inserção (acessado pressionando i
ou a
no modo normal), você pode inserir texto. Para mais informações, veja por exemplo este guia rápido .