Saya tidak bisa memikirkan satu utilitas yang akan melakukan apa yang Anda gambarkan, tetapi cukup mudah untuk membuat potongan shell.
script=$(curl -s "$url")
printf "%s\nDo you want to run this script? [yN]" "$script"
read line
case $line in
[Yy]|[Yy][Ee][Ss]) sh -c "$script";;
esac
Ini mengasumsikan skrip adalah file teks. Null byte tidak didukung: tergantung pada shell, mereka dapat dihapus, atau mereka dapat menyebabkan garis atau seluruh file terpotong. Juga semua baris baru di akhir file dihapus (konstruk heredoc menambahkan satu kembali). Biasanya ini bukan masalah untuk skrip, tetapi bisa juga, misalnya, jika skrip berakhir dengan arsip dalam format biner yang diekstraksi. Ini bukan cara yang sangat andal dalam mendistribusikan file karena ada risiko yang signifikan dari skrip biner seperti itu untuk salah kode pada beberapa titik. Meskipun demikian, Anda dapat menanganinya dengan menulis skrip ke file sementara.
script_file=$(mktemp)
curl -s "$url" | tee "$script_file"
printf "Do you want to run this script? [yN]"
read line
case $line in
[Yy]|[Yy][Ee][Ss]) sh "$script_file";;
esac
rm "$script_file"
$()
harus dikutip di baris pertama. Juga, ini akan menghapus karakter NUL dalam input, yang mungkin berakibat fatal (misalnya dalam kasus skrip self-extracting).