GNU/Linux >> Linux Esercitazione >  >> Linux

Mettere il comando della cronologia sulla riga di comando senza eseguirlo?

Uso !n dove (n) è il numero di riga per l'esecuzione di una riga nel file di cronologia che voglio venga eseguita al prompt dei comandi che trovo tramite history|less.

Ma c'è un evento della cronologia della riga di comando che desidero modificare manualmente. Come posso inserire nella riga di comando un contenuto di eventi della cronologia senza che sia effettivamente in esecuzione in modo da poter modificare e quindi premere Invio?

Il migliore,

Risposta accettata:

Per richiedere che il comando venga stampato anziché eseguito dopo la sostituzione della cronologia, aggiungi il :p modificatore, ad es. !42:p . Il comando risultante verrà inserito anche nella cronologia, quindi puoi premere Su per modificarlo.

Se hai histverify set di opzioni (shopt -s histverify ), avrai sempre la possibilità di modificare il risultato delle sostituzioni della cronologia.

Il fc builtin offre un accesso limitato all'espansione della cronologia (nessun designatore di parole) e ti consente di modificare un comando precedente in un editor esterno.

Puoi usare !prefix per fare riferimento all'ultimo comando che inizia con prefix e !?substring per fare riferimento all'ultimo comando che inizia con substring . Quando sai cosa stai cercando, questo può far risparmiare molto tempo su history | less .

Un altro modo per cercare nella cronologia precedente è la ricerca incrementale:premi Ctrl +R e inizia a inserire una sottostringa di ciò che stai cercando. Premi Ctrl +R per andare all'occorrenza precedente della stringa di ricerca fino a quel momento e Ctrl +S se sei andato troppo lontano. La maggior parte dei tasti diversi da Ctrl +R , Ctrl +S , Backspace e i caratteri ordinari terminano la ricerca incrementale e hanno il loro effetto abituale (es. tasti freccia per spostare il cursore nella riga raggiunta, Invio per eseguire il comando).


Linux
  1. Suggerimenti Bash per tutti i giorni dalla riga di comando

  2. ctrl + r nella riga di comando del terminale linux / ubuntu

  3. Esegui il comando in bash senza salvare nella cronologia

  4. Connettiti a MySQL tramite la riga di comando senza utilizzare la password di root?

  5. Come posso richiamare un comando specifico dalla cronologia dei comandi, senza eseguirlo

Comando della cronologia in Linux (Cronologia di Bash)

Comando Diff in Linux

Come visualizzare la cronologia di Bash senza numeri di riga

Comando della cronologia con esempi

Esegui il comando senza tenerlo nella cronologia

Ho digitato accidentalmente la password nella riga di comando di bash