Curl globbing (Sternchenerweiterung) unter Windows

866
František Žiačik

Unter Windows, in git bash (aber auch in der Systemkonsole, denke ich)

Warum curlignoriert ich alle meine Versuche, das Globbing zu deaktivieren, und Sternchen erweitert?

$ GLOBIGNORE="*"; set -f; curl --noproxy "*" "http://www.google.com" curl: (6) Could not resolve host: .gitignore 

Obwohl dies richtig funktioniert:

$ FOO="Abc *"  $ set +f;echo $FOO Abc .classpath .gitignore .project .settings pom.xml src target  $ set -f;echo $FOO Abc * 
0

1 Antwort auf die Frage

0
Linostar

curl ist nicht freundlich zu GLOBIGNORE.

Aber darf ich fragen, was wollen Sie mit Ihrem curlBefehl überhaupt erreichen?

Wenn Sie versuchen, das Sternchen zu verwenden, um alle übereinstimmenden Dateien in einem Remote-Verzeichnis (z. B. curl "http://www.example.com/*") abzurufen, wird dies sowieso nicht funktionieren. curlkann keine Dateien in einem Remote-Verzeichnis auflisten oder den Webserver dazu veranlassen, das Sternchen zu erweitern.

Wenn das Sternchen für --noproxyParameter bestimmt ist, können Sie stattdessen den alternativen Ansatz verwenden:

curl --noproxy `ls *` "http://www.google.com" 

Danach werden die Dateien / Ordner in Ihrem aktuellen Verzeichnis aufgelistet --noproxy, mit Ausnahme von Dateien / Ordnern, die mit einem Punkt beginnen.

Hallo. Das versuche ich zu vermeiden. Ich muss `--noproxy" * "` verwenden, aber unter Windows wird * erweitert, so dass der resultierende Befehl so etwas wie `curl --noproxy localfile1 localfile2 localfile3" http://www.google.com "` ist Verbinden Sie sich mit der "localfile2" -Adresse (wie in diesem `curl: (6) Host: .gitignore` kann nicht aufgelöst werden). Ich versuche, curl mitzuteilen, einfach noproxy * zu verwenden. František Žiačik vor 9 Jahren 0
Ich habe die Antwort aktualisiert. Bitte schau es dir an und sag mir, ob du das brauchst. Linostar vor 9 Jahren 0
Danke, aber ich kann sehen, dass ich mich nicht klar genug erklärt habe. Ich möchte das genaue Gegenteil von dem, was Sie tun. Ich möchte NICHT die aktuellen Ordnerdateien anstelle des Sternchens auflisten. Ich möchte dort ein Sternchen haben. Aber Windows oder Curl ersetzt das Sternchen durch Dateien, was ich deaktivieren möchte. František Žiačik vor 9 Jahren 0
Ich verstehe jetzt. Aber es scheint, dass git bash für Windows etwas anderes macht als die Standard-bash. Vielleicht möchten Sie es mit Cygwins Bash machen? Linostar vor 9 Jahren 0
Ja, sieht so aus. Ich bin mir zwar nicht ganz sicher, ob es sich um Gitbash handelt, vielleicht aber auch um Windows. František Žiačik vor 9 Jahren 0