Homepage » come » Come modificare rapidamente la prima parola in un comando Bash?

    Come modificare rapidamente la prima parola in un comando Bash?

    Se il tuo flusso di lavoro è popolato da un sacco di azioni ripetitive, allora non fa mai male cercare modi per migliorare e ottimizzare il tuo flusso di lavoro. Il post di Q & A di SuperUser di oggi ha alcuni suggerimenti utili per un lettore che cerca di migliorare il proprio flusso di lavoro.

    La sessione di domande e risposte di oggi ci viene fornita per gentile concessione di SuperUser, una suddivisione di Stack Exchange, un raggruppamento di siti Web di domande e risposte basato sulla comunità.

    Schermata per gentile concessione di Matt Joyce (Flickr).

    La domanda

    La moneta del lettore SuperUser vuole sapere come cambiare rapidamente la prima parola in un comando bash:

    Vorrei migliorare il mio flusso di lavoro in bash e ho capito che spesso desidero eseguire lo stesso comando su un altro eseguibile.

    Qualche esempio

    1.) Git

    2.) Bash

    So che posso colpire Ctrl + A poi del rimuovere la prima parola, ma mi chiedo se c'è un modo più veloce per farlo.

    C'è un modo più veloce per moneta per cambiare la prima parola in comandi bash?

    La risposta

    Collaboratori SuperUser Spiff, Hastur, jjlin. e Gustavo Giraldez ha la risposta per noi. Per prima cosa, Spiff:

    !$ si espande fino all'ultima parola del comando precedente. Quindi potresti fare:

    O

    I tuoi esempi sono riusciti a ripetere solo l'ultima parola, quindi! $ Ha funzionato bene. Se in realtà avevi molti argomenti che volevi ripetere, e volevi solo cambiare la prima parola, potresti usare! *, Che espande tutte le parole del comando precedente tranne lo zeroth.

    Vedi la sezione "ESPANSIONE DELLA STORIA" della pagina man di bash. C'è molta flessibilità lì.

    Seguito dalla risposta di Hastur:

    Vorrei aggiungere un avvertimento (vedere la risposta di Spiff sopra). Con! $, Non hai il pieno controllo visivo della linea che stai utilizzando. I risultati possono essere dannosi a volte, soprattutto se si incorre in un errore di stampa. Prende ciò di cui ha bisogno dalla storia per espandersi.

    Quindi se scrivi l'ultimo comando con uno spazio vuoto all'inizio, allora questo comando probabilmente non finirà dalla cronologia. Quando esegui il nuovo comando con! $, La shell non prenderà i parametri dall'ultima riga di comando digitata, ma solo dall'ultima parte della cronologia.

    Ecco alcune parole e comandi più utili.

    Quindi la risposta di jjlin:

    Ctrl + A per andare all'inizio della linea, quindi Alt + D per cancellare la prima parola.

    E la nostra risposta finale di Gustavo Giraldez:

    La scorciatoia per eliminare la parola è in realtà Meta + d, e Meta di solito è mappato a alt su macchine Linux. Su piattaforme dove questo non è il caso, un'alternativa per ottenere il Meta modificatore è da usare Esc come prefisso. Puoi leggere di più su Meta Key Qui.


    Hai qualcosa da aggiungere alla spiegazione? Audio disattivato nei commenti. Vuoi leggere più risposte dagli altri utenti di Stack Exchange esperti di tecnologia? Controlla la discussione completa qui.