Was ist Alt + Umschalt + {?

10

Getestet unter CentOS und Ubuntu, wenn Sie sich in einem Verzeichnis mit einer Menge Dateien befinden

$ ls
day1.tar.gz  day2.tar.gz  day3.tar.gz  day4.tar.gz  day5.tar.gz  day6.tar.gz  day7.tar.gz  day8.tar.gz day9.tar.gz day10.tar.gz

Und wenn Alt+Shift+{Sie darauf klicken, wird jeder Dateiname vollständig vervollständigt

<Alt+Shift+{>

vervollständigt zu:

 day{1{0.tar.gz,.tar.gz},2.tar.gz,3.tar.gz,4.tar.gz,5.tar.gz,6.tar.gz,7.tar.gz,8.tar.gz,9.tar.gz}

und

day1<Alt+Shift+{>

vervollständigt zu:

day1{0.tar.gz,.tar.gz}

Fragen : Was ist das? Wie heißt das? Wo ist es nützlich? Wie kann ich es konfigurieren? Kann ich dies für Dateien tun, die mit einem Teilstring enden, der nicht mit einem beginnt?

Mikhail
quelle

Antworten:

9

In Bash führt es die Readline-Funktion aus complete-into-braces.

Die Klammererweiterung ist eine nützliche Methode, um einen Verweis auf mehrere Dateien abzukürzen.

Zum Beispiel:

ls -l /path/to/dir/*.{c,h}

würde alle Dateien auflisten, die mit ".c" oder ".h" enden.

Von man bash:

Vervollständigen in Klammern (M- {)
Führen Sie die Vervollständigung des Dateinamens durch und fügen Sie die Liste möglicher Vervollständigungen in Klammern ein, damit die Liste für die Shell verfügbar ist (siehe Klammererweiterung oben).

und

Klammererweiterung Die
Klammererweiterung ist ein Mechanismus, mit dem beliebige Strings erzeugt werden können. Dieser Mechanismus ähnelt der Pfadnamenerweiterung, die generierten Dateinamen müssen jedoch nicht vorhanden sein. Zu erweiternde Muster für Klammern haben die Form einer optionalen Präambel, gefolgt von einer Reihe von durch Kommas getrennten Zeichenfolgen oder einem Sequenzausdruck zwischen zwei Klammern, gefolgt von einem optionalen Nachsatz. Die Präambel wird jeder in den geschweiften Klammern enthaltenen Zeichenfolge vorangestellt, und das Nachskript wird dann an jede resultierende Zeichenfolge angehängt und von links nach rechts erweitert.

Klammererweiterungen können verschachtelt sein. Die Ergebnisse jeder erweiterten Zeichenfolge werden nicht sortiert. Die Reihenfolge von links nach rechts bleibt erhalten. Zum Beispiel erweitert sich a {d, c, b} e zu "ade ace abe".

Die Vervollständigung wird per Definition abgeschlossen, sodass sie mit Dateien funktioniert, die mit einer Zeichenfolge beginnen .

Bis auf weiteres angehalten.
quelle
Ich bin erstaunt. Es ist eine inverse Klammererweiterung! ... gut;) ...
Peter.O