AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / ubuntu / Perguntas / 1526653
Accepted
Oli
Oli
Asked: 2024-09-13 16:44:45 +0800 CST2024-09-13 16:44:45 +0800 CST 2024-09-13 16:44:45 +0800 CST

Atalhos de teclado para executar o último comando com alterações?

  • 772

Eu frequentemente executo sequências de comandos administrativos interativamente no Bash. Eu leio as respostas antes de continuar, mas essas cadeias podem levar várias tentativas antes que eu fique satisfeito. Esses tipos de cadeias geralmente envolvem um único sistema com vários subcomandos, ou "ações":

sudo apt depends package
sudo apt rdepends package
sudo apt purge package
sudo apt install package
systemctl --user status whatever.service
systemctl --user restart whatever.service

A "ação", a coisa que você está realmente fazendo, está enterrada no meio do comando. Depois de quase duas décadas disso, ainda preciso de quatro passos para ir de um comando para o outro:

  1. ↑para mostrar o comando anterior
  2. Ctrl+ ←até que o quilate esteja no lugar certo
  3. Alt+ Backspacepara remover uma palavra
  4. Digite a nova "ação" e Return.

O que estou pedindo pode parecer preguiçoso, mas eu realmente me deparei com isso algumas vezes esta manhã em comandos muito mais longos, onde levou alguns bons segundos para caçar a linha para substituir a ação. O que eu quero saber é: isso é realmente o melhor que pode ser?

Fico sempre surpreso com o quanto não sei, então não ficaria tão chocado em saber que existe um atalho para substituição rápida de palavras em linha do qual nunca ouvi falar antes.

command-line
  • 1 1 respostas
  • 16 Views

1 respostas

  • Voted
  1. Best Answer
    muru
    2024-09-13T17:01:48+08:002024-09-13T17:01:48+08:00

    No bash, você pode usar a substituição rápida com ^...^...:

    ^string1^string2^

    Substituição rápida. Repita o último comando, substituindo string1por string2. Equivalente a !!:s^string1^string2^.

    O trailing ^pode ser omitido. Exemplo:

    bash-5.2$ echo foo bar foo
    foo bar foo
    bash-5.2$ ^foo^baz
    echo baz bar foo
    baz bar foo
    

    Então:

    sudo apt depends package
    ^dep^rdep
    ^rdepends^purge
    ^purge^install
    
    • 2

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve