ruby脚本gets方法没有接受输入
怪我咯
怪我咯 2017-04-24 09:09:27
0
1
702

执行这个脚本的时候,kee=gets.chomp这行代码没有接受输入,请问是怎么回事?谢谢。

#!/usr/bin/ruby

require 'crypt/blowfish'

unless ARGV[0]
    puts "Usage: ruby encrypt.rb <filename.ext>"
    puts "Example: ruby encrypt.rb secret.stuff"
    exit
end

filename=ARGV[0].chomp
puts filename
c="Encrypted_#{filename}"
if File.exists?(c)
    puts "File already exists."
    exit
end
print "Enter your encryption key (1-56 bytes): "
kee=gets.chomp
begin
    blowfish=Crypt::Blowfish.new(kee)
    blowfish.encrypt_file(filename.to_str,c)
    puts 'Encryption sucess!'
rescue Exception => e
    puts "An error occurred during encryption: \n #{e}"
end
怪我咯
怪我咯

走同样的路,发现不同的人生

membalas semua(1)
洪涛

Anda sedang memanggil kaedah gets dalam Kernel Kaedah gets ini akan cuba membaca kandungan ARGV, melainkan AGRV kosong, maka ia akan cuba membaca kandungan STDIN.

http://www.ruby-doc.org/core-2.2.0/Kernel.html#method-i-gets

Anda harus memanggil IO#gets, seperti STDIN.gets dan bukannya gets.

http://www.ruby-doc.org/core-2.2.0/IO.html#method-i-gets

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan