você está aqui: Home  → Arquivo de Mensagens

fc - fix command

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 24 de fevereiro de 2016

O comando fc significa fix command, ou seja, ele conserta um comando.

O comando fc invoca o seu editor de textos preferido para que você possa editar diretamente um ou vários comandos obtidos a partir do histórico de comandos emitidos.

Isto é muito útil, particularmente quando os comandos são grandes e complicados.

Vamos ver como funciona. Suponhamos que você tenha emitido o comando abaixo:

  evince /usr/share/doc/simh/simhdoc.pdf

O arquivo simhdoc.pdf não existe, o correto é simh_doc.pdf. Para editar este comando com o comando fc, basta invocá-lo com um trecho do comando que se quer mudar e teclar <ENTER>.

  fc ev <ENTER>

Isto feito, o meu editor favorito (vim) é aberto com uma linha contendo o comando evince /usr/share/doc/simh/simhdoc.pdf. Isto feito, basta corrigir o nome do arquivo e sair do editor de texto. Ao ser finalizada a edição, o comando é automaticamente executado.

É claro que edições simples como acima podem ser feitas de várias outras formas, como por exemplo, com as teclas de navegação do bash, e outros mecanismos. Mas se o trecho que desejamos corrigir for mais complexo, o valor deste comando se destaca.

  for f in *.SRC
  do
      sed -n "s/foo/bar/g" $f
  done

Para invocar este trecho no editor de texto, basta digitar

  fc for

Outro uso interessante, eu posso referenciar diretamente os comandos que desejo editar a partir da numeração do arquivo .history;

  fc 10 20

O editor de texto será aberto contendo os comandos de 10 a 20 de meu histórico.

Para editar apenas um comando, basta especificar o seu número no histórico:

  fc 100

O comando fc oferece diversos outros recursos. Para saber mais, consulte a documentação do programa.



 

 

Veja a relação completa dos artigos de Rubens Queiroz de Almeida

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script