Apple
最近新开源了一个库,叫 ArgumentParser,它是由 Swift 实现的,用于解析命令行参数(command-line arguments)的。
构建命令行工具
为了演示如何使用 ArgumentParser
库,我们将以一个生成随机数为示例。
> random 20
17
> random 100
89
> random
Error: Missing expected argument '<high-value>'
Usage: random <high-value>
定义了一个 Random
类型,并且需要一个整数类型的参数(highValue
),然后会生成一个介于 1 和 highValue
之间的随机数。
源码如下:
import ArgumentParser
struct Random: ParsableCommand {
@Argument() var highValue: Int
func run() {
print(Int.random(in: 1...highValue))
}
}
Random.main()
实现就是这么简单。
@Argument
表明该属性是作为命令行参数(command-line argument
)的。- 调用
main()
方法,将会开始解析,如果成功将运行命令行工具(command-line tool
)。 - 该库也会提供一些引导性的信息给用户,比如
highValue
属性的名称以及类型等。 highValue
被定义成Int
类型,只有输入合法的值才可以,否则将会报错。
继续阅读“介绍 Swift ArgumentParser 库”