Yanıtlar:
Aradığın şeyin -sseçenek olduğuna inanıyorum . İle -sbetiğe argümanlar iletebilirsiniz.
Bunu açıklamak için kukla bir örnek olarak:
$ echo 'echo 1=$1' | bash -s -- Print
1=Print
Burada, stdin üzerinde sağlanan komut dosyasının konum parametresi verildiğini görebilirsiniz Print. Betiğiniz bir -u UUIDargüman alır ve bu da kabul edilebilir:
$ echo 'echo arguments=$*' | bash -s -- -u UUID print
arguments=-u UUID print
Yani, sizin durumunuzda:
curl -fsSL http://git.io/vvZMn | bash -s -- print
Veya,
curl -fsSL http://git.io/vvZMn | bash -s -- -u UUID print
Stephen Harris'in işaret ettiği gibi, bir senaryoyu indirmek ve yürütmek, görünmeyen görme, bir güvenlik sorunudur.
Sisteminiz varsa /dev/stdin, aşağıdakileri kullanabilirsiniz:
$ echo 'echo 1=$1' | bash /dev/stdin print
1=print
Do not bunu:
$ echo 'echo 1=$1' | bash /dev/stdin -- print
1=--
Kullanmak istiyorsanız --, bunu yapın:
$ echo 'echo 1=$1' | bash -- /dev/stdin print
1=print
printyapmayı umuyorsun? Çalıştırılan komutlar gösterilsin mi? Varsa, deneyinbash -x. Not: Bucurl | bashrutin büyük bir güvenlik deliğidir; sunucunuz bulana kadar nelerin çalıştırılacağını göremezsiniz.