3Sep
Wenn in Ihrem Workflow viele sich wiederholende Aktionen ausgeführt werden, ist es nicht schade, nach Möglichkeiten zu suchen, wie Sie Ihren Workflow verbessern und optimieren können. Der heutige SuperUser F & A-Beitrag enthält einige hilfreiche Vorschläge für einen Leser, der seinen Arbeitsfluss verbessern möchte.
Die heutige Frage &Die Antwortsitzung kommt dank SuperUser, einer Unterteilung von Stack Exchange, einer Community-gesteuerten Gruppierung von Q & A-Websites, zu uns.
Screenshot mit freundlicher Genehmigung von Matt Joyce( Flickr).
Die Frage
SuperUser Lesermünze möchte wissen, wie man das erste Wort in einem Bash-Befehl schnell ändert:
Ich möchte meinen Workflow in bash verbessern und merke, dass ich oft denselben Befehl an eine andere ausführbare Datei ausführen möchte.
Einige Beispiele
1.) Git
2.) Bash
Ich weiß, dass ich Ctrl + ein dann Del drücken kann, um das erste Wort zu entfernen, aber ich frage mich, ob es einen schnelleren Weg gibt, es zu tun.
Gibt es einen schnelleren Weg, das erste Wort in Bash-Befehlen zu ändern?
Die Antwort
SuperUser Beiträge Spiff, Hastur, jjlin.und Gustavo Giraldez haben die Antwort für uns. Zunächst wird Spiff:
! $ Auf das letzte Wort Ihres vorherigen Befehls erweitert. So könnten Sie tun:
Oder
Ihre Beispiele passiert, nur das letzte Wort zu wiederholen, also! $ Hat gut funktioniert. Wenn Sie tatsächlich viele Argumente hatten, die Sie wiederholen wollten, und Sie nur das erste Wort ändern wollten, könnten Sie! * Verwenden, das sich auf alle Wörter des vorherigen Befehls ausdehnt, mit Ausnahme des nullten.
Siehe Abschnitt "HISTORY EXPANSION" auf der Bash-Man-Seite. Dort ist viel Flexibilität.
Gefolgt von der Antwort von Hastur:
Ich möchte eine Warnung hinzufügen( siehe die Antwort von Spiff über ).Mit! $ Haben Sie keine vollständige visuelle Kontrolle über die Linie, die Sie ausführen. Die Ergebnisse können manchmal schädlich sein, insbesondere wenn Sie einen Druckfehler haben. Es nimmt, was es von der Geschichte braucht, um zu erweitern.
Wenn Sie also den letzten Befehl mit einem Leerzeichen am Anfang schreiben, wird dieser Befehl wahrscheinlich nicht aus dem Verlauf enden. Wenn Sie Ihren neuen Befehl mit! $ Ausführen, übernimmt die Shell nicht die Parameter der letzten eingegebenen Befehlszeile, sondern nur den letzten Teil des Verlaufs.
Hier sind einige hilfreiche Wörter und Befehle.
Dann die Antwort von jjlin:
Strg + ein , um zum Anfang der Zeile zu gehen, dann Alt + d , um das erste Wort zu löschen.
Und unsere letzte Antwort von Gustavo Giraldez:
Die Abkürzung Wortverknüpfung ist eigentlich Meta + d , und Meta ist in der Regel Alt auf Linux-Maschinen zugeordnet. Auf Plattformen, bei denen dies nicht der Fall ist, besteht eine Alternative zum Erhalt des -Modifikators darin, Esc als Präfix zu verwenden. Sie können hier mehr über den Meta Key lesen.
Haben Sie etwas zur Erklärung hinzuzufügen? Ton in den Kommentaren ab. Möchten Sie mehr Antworten von anderen technisch versierten Stack Exchange Benutzern lesen? Sehen Sie sich den vollständigen Diskussionsfaden hier an.