Antworten:
Kurze Antwort: Ja, das wird es.
Von der Bash- Manpage:
Nach der Wortteilung durchsucht Bash jedes Wort nach den Zeichen '*', '?' Und '[', sofern nicht die Option -f gesetzt wurde (siehe Die eingebaute Einstellung). Wenn eines dieser Zeichen angezeigt wird, wird das Wort als Muster angesehen und durch eine alphabetisch sortierte Liste von Dateinamen ersetzt, die mit dem Muster übereinstimmen.
ls
auf demselben System ergeben.
Die kurze Antwort lautet Ja, aber Sie müssen sich dessen bewusst sein, wie die alphanumerische Reihenfolge laut Ihrer Meinung sein sollte, da sie möglicherweise nicht der natürlichen Reihenfolge entspricht, die Sie sich vorgestellt haben.
Führen Sie beispielsweise einen Test durch, um herauszufinden, wie Groß- und Kleinbuchstaben auf Ihrem System behandelt werden, und um herauszufinden, ob es sich um Zahlenfolgen handelt.
Ein häufiges Problem bei der Bestellung von Listen mit Dateien, die von einem Glob zurückgegeben werden, sind nummerierte Dateien. Ich bekomme oft Dateien mit folgenden Nummern:
blah_1.txt
blah_2.txt
...
blah_10.txt
blah_11.txt
Ein Glob, der das verwendet, *
gibt sie jedoch nicht in dieser Reihenfolge zurück. Stattdessen erhalten Sie Folgendes:
blah_1.txt
blah_10.txt
blah_11.txt
...
blah_2.txt
blah_20.txt
...
Also - dieses Problem zu vermeiden müssen Sie entweder eine Manipulation an der zurückgegebenen Liste von Dateien oder Umbenennen von Dateien , so dass einstelligen Bereich zu tun haben führende Null (dh blah_01.txt
, blah_02.txt
usw.).
$LC_COLLATE
) von den Ländereinstellungen abhängt .