0
我写了一个输出用户选择的URL的小Ruby脚本。我想将此URL嵌入到我的Bash脚本中,以便它直接提供给wget部分,而不是强制用户复制和粘贴链接。目前的代码如下:将Ruby脚本结果回传到Bash脚本变量中
>echo "Choose file to download"
>./myscript.rb #
>echo "Copy and Paste URL"
>read answer
>wget -O /myfile.zip "$answer"
任何帮助,使这将不胜感激。
编辑:
>"Choose file to download"
>18 obfuscated1.zip 891 Thu, 18 Apr 2013 16:13:05 GMT
>19 obfuscated2.zip 892 Fri, 19 Apr 2013 16:13:53 GMT
>20 obfuscated3.zip 893 Sat, 20 Apr 2013 16:13:16 GMT
>20
>http://s3-us.amazonaws.com/obfuscated3.zip/AWSAccessKeyId=/Expires=/Signature=
URL标记化产出和这里简称为明显的原因。
谢谢你的快速反应。使用该命令将脚本冻结在“answer = $(./ myscript.rb)”处。我认为是因为用户在Ruby脚本内部提供了一个答案,该脚本产生了适当的URL。有没有一种方法可以将URL结果回显到变量中,或者您认为最好查找Ruby解决方案吗? – LFoos24 2013-04-24 15:56:57
它不应该冻结。尝试用这个超级简单的Ruby脚本'puts(gets.chomp)'替换你的'myscript.rb'。它冻结? – toro2k 2013-04-24 16:09:30
它没有冻结; 'myscript.rb'可能会提示用户输入内容,但不会显示提示符,因为它是由'$(...)'语法捕获的。 – chepner 2013-04-24 16:12:09