文件操作 - prompt.rb
返回文件管理
返回主菜单
删除本文件
文件: /opt/puppetlabs/puppet/lib/ruby/gems/3.2.0/gems/net-ssh-7.2.3/lib/net/ssh/prompt.rb
编辑文件内容
require 'io/console' module Net module SSH # Default prompt implementation, called for asking password from user. # It will never be instantiated directly, but will instead be created for # you automatically. # # A custom prompt objects can implement caching, or different UI. The prompt # object should implemnted a start method, which should return something implementing # ask and success. Net::SSH uses it like: # # prompter = options[:password_prompt].start({type:'password'}) # while !ok && max_retries < 3 # user = prompter.ask("user: ", true) # password = prompter.ask("password: ", false) # ok = send(user, password) # prompter.sucess if ok # end # class Prompt # factory def self.default(options = {}) @default ||= new(options) end def initialize(options = {}); end # default prompt object implementation. More sophisticated implemenetations # might implement caching. class Prompter def initialize(info) if info[:type] == 'keyboard-interactive' $stdout.puts(info[:name]) unless info[:name].empty? $stdout.puts(info[:instruction]) unless info[:instruction].empty? end end # ask input from user, a prompter might ask for multiple inputs # (like user and password) in a single session. def ask(prompt, echo = true) $stdout.print(prompt) $stdout.flush ret = $stdin.noecho(&:gets).chomp $stdout.print("\n") ret end # success method will be called when the password was accepted # It's a good time to save password asked to a cache. def success; end end # start password session. Multiple questions might be asked multiple times # on the returned object. Info hash tries to uniquely identify the password # session, so caching implementations can save passwords properly. def start(info) Prompter.new(info) end end end end
修改文件时间
将文件时间修改为当前时间的前一年
删除文件