Domovská » jak » Jak rychle změnit první slovo v příkazu Bash?

    Jak rychle změnit první slovo v příkazu Bash?

    Pokud je váš pracovní postup naplněn mnoha opakujícími se akcemi, nikdy neubližuje hledání způsobů, jak zlepšit a zefektivnit pracovní postup. Dnešní příspěvek typu SuperUser Q & A obsahuje užitečné návrhy pro čtenáře, který se snaží zlepšit svůj pracovní postup.

    Dnešní zasedání Otázky a odpovědi nás přichází s laskavým svolením SuperUser - podřízené rozdělení Stack Exchange, které je založeno na komunitě prostřednictvím skupin webových stránek.

    Screenshot s laskavým svolením Matt Joyce (Flickr).

    Otázka

    Mince čtečky SuperUser chce vědět, jak rychle změnit první slovo v příkazu bash:

    Chtěl bych zlepšit své workflow v bash a uvědomil jsem si, že často chci provést stejný příkaz k jinému spustitelnému souboru.

    Nějaké příklady

    1.) Git

    2.) Bash

    Vím, že mohu zasáhnout Ctrl + a pak Del odstranit první slovo, ale přemýšlím, jestli je k tomu rychlejší způsob.

    Existuje rychlejší způsob, jak mince změnit první slovo v příkazu bash?

    Odpověď

    Uživatelé SuperUseru Spiff, Hastur, jjlin. a Gustavo Giraldez mají odpověď na nás. První, Spiff:

    !$ se rozšiřuje na poslední slovo předchozího příkazu. Takže můžete udělat:

    Nebo

    Vaše příklady se staly pouze opakováním posledního slova, takže $ fungovalo dobře. Pokud jste vlastně měli spoustu argumentů, které jste chtěli opakovat, a jen jste chtěli změnit první slovo, můžete použít! *, Který se rozšiřuje na všechna slova předchozího příkazu s výjimkou nuly.

    Viz část "HISTORY EXPANSION" na stránce bash man. Tam je spousta flexibility.

    Následuje odpověď od Hastura:

    Chci přidat varování (viz odpověď z výše uvedeného programu Spiff). S! $, Nemáte úplné vizuální ovládání linky, kterou používáte. Výsledky mohou být někdy škodlivé, zvláště pokud se objeví chybný tisk. Trvá to, co potřebuje z historie, aby se rozšířila.

    Takže pokud na začátku píšete poslední příkaz s prázdným místem, pravděpodobně tento příkaz z historie nebude dokončen. Při spuštění nového příkazu s parametrem! $ Nebude shell přijímat parametry z posledního zadaného příkazového řádku, ale pouze z poslední části historie.

    Zde jsou další užitečné slova a příkazy.

    Pak odpověď od jjlin:

    Ctrl + a jít na začátek řádku, pak Alt + d odstranění prvního slova.

    A naše konečná odpověď od Gustava Giraldeze:

    Klávesová zkratka pro odstranění slov je vlastně Meta + d, a Meta je obvykle mapován na Alt na počítačích Linux. Na platformách, kde tomu tak není, je alternativa k získání Meta modifikátor je třeba použít Esc jako předponu. Další informace o Meta klíč tady.


    Musíte něco přidat k vysvětlení? Vyjměte v komentářích. Chcete se dozvědět více odpovědí od ostatních uživatelů technologie Stack Exchange? Podívejte se na celý diskusní příspěvek zde.