Clamp网线钳子,正如其名,ClampClamp正如其名,网线钳,Clamp是很好的命令行实用工具,它可以处理枯燥的东西,如解析命令行,并产生帮助,这样你就可以开始制作你的命令实际上做的东西。

require "clamp"
class ClampTest < Clamp::Command
# 1.命令行的参数使用主要分两类,一种是参数名称后面带参数值的方式,
#我们这里成为option,我们可以通过option方法来处理。
# 2.命令行不带参数名直接接参数值,成为parameter,我们用parameter函数
#来处理
#=====================================================================================
#option函数最重要的是三个参数
#1.option开关
#2.option的参数名称(可以指定:flag表示没有参数值)
#3.参数的描述
#如果第一个参数不是数组,可以使用其作为变量名,如果是数组,建议使用:attribute_name
option "--port","PORT11","Server's port";
option ["--version","-v"],"VERSION","See the Version",:attribute_name =>:ver;
option ["--Format","-f"],:flag,"Fommate the Date String",:attribute_name=>:format;#:flag是父类预定义的告诉程序,这个参数没有值
option "--password",:flag,"ID",:require=>true; #表示必须写入的字段,否则会报错
#=====================================================================================
#words后面和三个点之间必须有一个空格否则:word的类型回事string而不是array类型了
parameter "Words ...","the thing to say",:attribute_name=>:words;
def execute
if !ver.nil?
puts "version is #{ver}";
end
if !port.nil? #有值参数的判断方式
puts "Port is #{port}";
end
if format? #无值参数的判断方法
puts "You have checked Format";
end
info=words.join(" ");
puts(info);
end
end
#必须执行这个方法,才能让设置生效
ClampTest.run;

【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步