Úvodná » ako » Ako rýchlo zmeniť prvé slovo v príkaze bash?

    Ako rýchlo zmeniť prvé slovo v príkaze bash?

    Ak je váš pracovný postup naplnený mnohými opakovanými činnosťami, nikdy neubližuje hľadanie spôsobov, ako zlepšiť a zefektívniť váš pracovný postup. Dnešný príspevok SuperUser Q & A obsahuje niekoľko užitočných návrhov pre čitateľa, ktorý sa snaží zlepšiť svoj pracovný postup.

    Dnešná relácia otázok a odpovedí sa k nám pridelí zdvorilosťou SuperUser - podskupiny Stack Exchange, zoskupenia webových stránok typu Q & A.

    Snímka s ukážkou Matt Joyce (Flickr).

    Otázka

    Mince čítačky SuperUser chce vedieť, ako rýchlo zmeniť prvé slovo v príkaze bash:

    Chcel by som zlepšiť svoj pracovný postup v bash a uvedomil som si, že často chcem vykonať ten istý príkaz inému spustiteľnému súboru.

    Niektoré príklady

    1.) Git

    2.) Bash

    Viem, že môžem zasiahnuť Ctrl + A potom del aby som odstránila prvé slovo, ale zaujímalo ma, či je to rýchlejšie.

    Existuje rýchlejší spôsob, ako mince zmeniť prvé slovo v príkazoch bash?

    Odpoveď

    Príspevky SuperUser Spiff, Hastur, jjlin. a Gustavo Giraldez majú odpoveď pre nás. Prvýkrát, Spiff:

    !$ rozšíri na posledné slovo predchádzajúceho príkazu. Takže môžete urobiť:

    alebo

    Vaše príklady sa stali iba opakovaním posledného slova, takže $ fungoval dobre. Ak ste vlastne mali veľa argumentov, ktoré ste chceli zopakovať, a len ste chceli zmeniť prvé slovo, môžete použiť! *, Ktorý sa rozširuje na všetky slová predchádzajúceho príkazu okrem nuly.

    Pozrite si časť "HISTORY EXPANSION" na stránke bash man. Tam je veľa flexibility tam.

    Nasledovala odpoveď od Hastura:

    Chcel by som pridať varovanie (pozri odpoveď od Spifa vyššie). S! $ Nemáte úplnú vizuálnu kontrolu riadku, ktorý používate. Výsledky môžu byť niekedy škodlivé, najmä ak sa stanete chybou. Z histórie trvá to, čo potrebuje, aby sa rozšírila.

    Takže ak napíšete na začiatku posledný príkaz s prázdnym miestom, tento príkaz pravdepodobne nebude ukončený z histórie. Keď spustíte nový príkaz s! $, Shell nebude brať parametre z posledného zadaného príkazového riadku, ale iba z poslednej časti histórie.

    Tu sú niektoré ďalšie užitočné slová a príkazy.

    Potom odpoveď od jjlin:

    Ctrl + A prejsť na začiatok riadku, potom Alt + d na vymazanie prvého slova.

    A naša konečná odpoveď od Gustava Giraldeza:

    Skratka odstraňovania slov je skutočne Meta + d, a meta je zvyčajne mapované na alt na strojoch Linux. Na platformách, kde to nie je, alternatíva k získaniu meta modifikátor Esc ako predponu. Viac informácií o Meta kľúč tu.


    Máte niečo doplniť vysvetlenie? Znie to v komentároch. Chcete sa dozvedieť viac odpovedí od iných používateľov technickej úrovne Stack Exchange? Pozrite sa na celý diskusný príspevok tu.