Як швидко змінити перше слово в команді Bash?
Якщо ваш робочий процес заповнений безліччю повторюваних дій, то ніколи не завадить шукати способи поліпшення та оптимізації робочого процесу. Сьогоднішня стаття SuperUser Q&A містить деякі корисні пропозиції для читача, який прагне поліпшити свій робочий процес.
Сьогоднішня сесія запитань та відповідей приходить до нас люб'язно SuperUser - підрозділ Stack Exchange, групування веб-сайтів із запитаннями та відповідями на рівні спільноти..
Скріншот люб'язно наданий Matt Joyce (Flickr).
Питання
Монета читача SuperUser хоче знати, як швидко змінити перше слово в команді bash:
Я хотів би поліпшити свій робочий процес у bash і зрозумів, що часто хочу виконати ту ж команду для іншого виконуваного файлу.
Деякі приклади
1.) Git
2.) Баш
Я знаю, що можу вдарити Ctrl + a потім Del щоб видалити перше слово, але мені цікаво, чи є це швидше.
Чи є більш швидкий спосіб для монети змінити перше слово в bash команд?
Відповідь
Співробітники суперкористувача Spiff, Hastur, jjlin. і Густаво Гіральдес мають відповідь для нас. Спочатку, Spiff:
!$ розширюється до останнього слова вашої попередньої команди. Так ви могли б зробити:
Or
Ваші приклади лише повторили останнє слово, так що! Якщо ви дійсно мали багато аргументів, які ви хотіли повторити, і ви просто хотіли змінити перше слово, ви можете використовувати! *, Який розширюється на всі слова попередньої команди, крім нуля.
Див. Розділ «Розширення історії» на сторінці bash man. Є велика гнучкість.
Далі йшла відповідь від Хастура:
Я хотів би додати попередження (див. відповідь Spiff вище). З! $ Ви не маєте повного візуального контролю лінії, яку ви виконуєте. Результати можуть бути шкідливими іноді, особливо якщо ви зазнаєте помилки. Вона займає те, що потрібно від історії, щоб розширюватися.
Так що якщо ви пишете останню команду з порожнім простором на початку, то ця команда, ймовірно, не закінчиться з історії. Коли ви виконуєте нову команду з! $, Оболонка не буде приймати параметри з останнього командного рядка, але тільки з останньої частини історії..
Ось кілька корисних слів і команд.
Тоді відповідь від jjlin:
Ctrl + a потім перейти до початку рядка Alt + d , щоб видалити перше слово.
І остаточна відповідь від Gustavo Giraldez:
Насправді клавіша видалення слова Мета + d, і Мета зазвичай відображається Alt на машинах Linux. На платформах, де це не так, альтернатива отримати Мета модифікатор для використання вихід як префікс. Ви можете прочитати більше про Мета ключ тут.
Маєте щось додати до пояснення? Звучить в коментарях. Хочете прочитати більше відповідей від інших технологічних користувачів Stack Exchange? Перегляньте повний потік обговорення тут.