Dnešná relácia otázok a odpovedí sa k nám pridelí zdvorilosťou SuperUser - podskupiny Stack Exchange, skupín webových stránok týkajúcich sa otázok a odpovedí.
Snímka s ukážkou Matt Joyce (Flickr).
Otázka
Mince čítačky SuperUser chce vedieť rýchlo zmeniť prvé slovo v príkaze bash:
I would like to improve my workflow in bash and realized that I often want to execute the same command to a different executable.
Some Examples
1.) Git
I know that I can hit Ctrl+a then Del to remove the first word, but I am wondering if there is a quicker way to do it.
Existuje rýchlejší spôsob, ako minca 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:
!$ expands to the last word of your previous command. So you could do:
See the “HISTORY EXPANSION” section of the bash man page. There is a lot of flexibility there.
Nasledovala odpoveď od Hastura:
I would like to add a warning (see the answer from Spiff above). With !$, you do not have full visual control of the line you are running. The results can be harmful sometimes, especially if you incur a misprint. It takes what it needs from the history to expand on.
So if you write the last command with a blank space at the beginning, then this command will probably not finish from the history. When you execute your new command with !$, the shell will not take the parameters from the last command line typed, but only from the last part of the history.
Here are some more helpful words and commands.
Potom odpoveď od jjlin:
Ctrl+a to go to the beginning of the line, then Alt+d to delete the first word.
A naša konečná odpoveď od Gustava Giraldeza:
The delete word shortcut is actually Meta+d, and Meta is usually mapped to Alt on Linux machines. On platforms where this is not the case, an alternative to get the Meta modifier is to use Esc as a prefix. You can read more about the Meta Key here.
Máte niečo doplniť vysvetlenie? Znížte komentáre. Chcete si prečítať viac odpovedí od iných používateľov technológie Stack Exchange? Pozrite sa na celý diskusný príspevok tu.