Pagina principala » HOWTO » Cum de a schimba rapid primul cuvânt într-o comandă bash?

    Cum de a schimba rapid primul cuvânt într-o comandă bash?

    Dacă fluxul dvs. de lucru este populat cu o mulțime de acțiuni repetitive, atunci nu vă doare niciodată să căutați modalități de îmbunătățire și eficientizare a fluxului de lucru. Postul de astăzi SuperUser Q & A are câteva sugestii utile pentru un cititor care încearcă să își îmbunătățească fluxul de lucru.

    Sesiunea de întrebări și răspunsuri din ziua de astăzi vine de la amabilitatea SuperUser - o subdiviziune a Stack Exchange, o grupare bazată pe comunitate a site-urilor web Q & A.

    Imaginea de pe urma lui Matt Joyce (Flickr).

    Intrebarea

    Cititorul de monitoare SuperUser vrea să știe cum să schimbe rapid primul cuvânt într-o comandă bash:

    Aș dori să îmbunătățesc fluxul de lucru în bash și mi-am dat seama că de multe ori vreau să execut aceeași comandă la un alt executabil.

    Cateva exemple

    1.) Git

    2.) Bash

    Știu că pot să lovesc Ctrl + un atunci del pentru a elimina primul cuvânt, dar mă întreb dacă există un mod mai rapid de a face acest lucru.

    Există o cale mai rapidă pentru ca moneda să schimbe primul cuvânt din comenzile bash?

    Răspunsul

    Contribuitori la Super Spy Spiff, Hastur, jjlin. și Gustavo Giraldez au răspunsul pentru noi. În primul rând, Spiff:

    !$ se extinde la ultimul cuvânt din comanda anterioară. Deci ai putea să faci:

    Sau

    Exemplele tale s-au întâmplat doar să repetăm ​​ultimul cuvânt, așa că $ a lucrat bine. Dacă ați avea de fapt o mulțime de argumente pe care ați vrut să le repetați și ați vrut doar să schimbați primul cuvânt, ați putea folosi! *, Care se extinde la toate cuvintele comenzii anterioare, cu excepția zeroului.

    Consultați secțiunea "EXPANSIUNEA ISTORIEI" a paginii de bază a bashului. Există o mulțime de flexibilitate acolo.

    Urmat de răspunsul lui Hastur:

    Aș dori să adaug un avertisment (a se vedea răspunsul de la Spiff de mai sus). Cu! $, Nu aveți control vizual complet al liniei pe care o executați. Rezultatele pot fi uneori vătămătoare, mai ales dacă suferiți o greșeală. Este nevoie de ceea ce are nevoie de la istorie pentru a se extinde.

    Deci, dacă scrieți ultima comandă cu un spațiu gol la început, atunci această comandă probabil că nu va termina din istorie. Când executați noua comandă cu! $, Shell-ul nu va lua parametrii din ultima linie de comandă tastată, dar numai din ultima parte a istoricului.

    Iată câteva cuvinte și comenzi mai utile.

    Apoi răspunsul de la jjlin:

    Ctrl + un pentru a merge la începutul liniei, atunci Alt + d pentru a șterge primul cuvânt.

    Și răspunsul nostru final de la Gustavo Giraldez:

    Ștergerea rapidă a cuvintelor este de fapt Meta + d, și Meta este de obicei mapat la Alt pe mașinile Linux. Pe platforme unde nu este cazul, o alternativă pentru a obține Meta modificator este de a utiliza Esc ca prefix. Puteți citi mai multe despre Meta cheie aici.


    Aveți ceva de adăugat la explicație? Sunați în comentariile. Doriți să citiți mai multe răspunsuri de la alți utilizatori de tehnologie Stack Exchange? Check out discuția completă aici.