warum ist zsh globbing nicht funktioniert mit dem Befehl "suchen"?
Ich habe mit zsh globbing für Befehle wie:
vim **/filename
vim *.html.erb
und so weiter, aber wenn ich in etwas wie:
find . -name *mobile*
Bekomme ich die Antwort:
zsh: no matches found: *mobile*
Warum?
- Ich denke, es ist besser, genau richtig hier: unix.stackexchange.com/questions/130958/...
Du musst angemeldet sein, um einen Kommentar abzugeben.
vs
Den Unterschied durch die Schritte, die shell, wenn Sie analysiert eine Linie. Normalerweise ist die shell erweitert alle wildcards, die es findet, vor der Ausführung des Befehls. Aber einzelne Zitate markiert das argument ein literal, was bedeutet, dass die shell nicht preform-wildcard-expansion auf das argument, bevor Sie den Befehl ausführen.
Zu zeigen, den Unterschied, nehmen Sie an, Sie sind in einem Verzeichnis mit folgenden Dateien:
zsh erweitern sich die erste form auf die folgenden Punkte, bevor es läuft:
Was bedeutet, dass finden, nur suchen Sie nach Dateien mit dem Namen buchstäblich Mobil.1
Das zweite Formular wird wie folgt ablaufen:
Was bedeutet, dass finden Aussehen wird für alle Dateinamen, die mit der Zeichenfolge "mobile".
Die wichtige Sache zu beachten ist hier, dass beide zsh und Unterstützung finden, die gleichen wildcard-syntax, aber Sie möchten finden, behandeln die wildcards in diesem Fall nicht zsh.
Stellt sich heraus, dass alle Sie tun müssen, um das problem zu lösen ist, fügen Sie einige Zitate rund um den Eingang:
Ich nicht wirklich eine Antwort auf die Frage, warum eben doch...und die Dokumentation nicht mit einem etwas, die aus Stöcken zu mir, aber lassen Sie mich wissen, wenn Sie die Antwort wissen!